Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

TServerSocket и браузер

32K
28 января 2008 года
Asket2412
11 / / 28.01.2008
Ребята помогите плиз

Пишу программу используя компонент TServerSocket

Суть программы: На сервере запускается прога на компе клиента в браузер
вводится IP адрес (http://210.0.212.3/test - к примеру ) я перехватываю запрос формирую и отправляю HTML или файл (jpeg,rar и тд)
Но как мне организовать Upload со стороны клиента
я допустим выдавал HTML и методом POST отправлял данные на сервер
получить их получил в AnsiString, но как их обработать и сохранить на диск не знаю.
11
28 января 2008 года
oxotnik333
2.9K / / 03.08.2007
Цитата:
сохранить на диск



примерно так:
FILE *stream;
stream = fopen("TEST.$$$", "wb");
fwrite(s.c_str(), sizeof(s), 1, stream);

s - переменная типа AnsiString

32K
29 января 2008 года
Asket2412
11 / / 28.01.2008
Да я так примерно и пробовал, но дело в том, что я не знаю как правильно парсить приходящий контент

Ведь допустим если передается фото то лишние символы испортят фото
и недостающие тоже

Пример приходящего контента или в указанном примере AnsiString s:

-----------------------------7d82615570736
Content-Disposition: form-data; name="userfile"; filename="C:\Documents and Settings\sharlamov.INTERNAL\My Documents\My Pictures\exit.png"
Content-Type: image/x-png

‰PNG
||


А может быть есть какието стандартные компоненты для парсинга.
92
29 января 2008 года
Тень Пса
2.2K / / 19.10.2006
курим HTTP спецу ))) чтобы парсить правильно. ну и в AnsiString пихать бинарные данные..... имхо это изврат товарищи )

предлагаю использовать массив byte.

я поищу как я делал. не обещаю, что сегодня, но поищу.
32K
30 января 2008 года
Asket2412
11 / / 28.01.2008
да, было бы очень здорово, примерчик

да и все другие советы выслушал бы с удовольствием
92
31 января 2008 года
Тень Пса
2.2K / / 19.10.2006
ну, в общем у меня была совсем другая задача - я получал картинку напрямую, а не разбирал данные POST запроса.

а тебе, лучше парсить всё до Content-Type, при этом сохраняя boundary :) это вот эта вот " -----------------------------7d82615570736" фигня.

разбираешь всё ДО Content-Type после Content-Type идёт 2 перевода строки, а дальше данные, которые тебе собссна и нужны. запихать всё можно в byte*. потому как это всё-таки не строка...


а нафига тебе компоненты? )) если ты можешь сам всё написать... лучше поймешь. а если еще и HTTP спецу почитаешь, то всё становится ясным и понятным сразу же =)

2 Asket2412: в личку писать не обязательно ) я прекрасно помню, что обещал посмотреть :)
32K
31 января 2008 года
Asket2412
11 / / 28.01.2008
Не знаю я попытался распарсить наверно я на какието символы пропускаю
так как в файл я записываю, но он не открывается

Если можно выложите примерчик.

PS На счет привата я понял sorry
1
31 января 2008 года
kot_
7.3K / / 20.01.2000
Если еще раз повториться - "выложите примерчик" - я закрою тему а вы получите нарушение. Если у вас не работает ваш код - приведите или фрагмент его, что бы можно было протестировать и проверить в чем ваша ошибка, либо прикрепите проект.
Если у вас нет кода - а вы ждете "примерчиков" - значит тема просто будет закрыта.
92
01 февраля 2008 года
Тень Пса
2.2K / / 19.10.2006
ну, советую прислушаться к kot_, и выложить тот кусок кода, который парсит и пишет в файл + результат чего у вас в файле записано. желательно аттачем.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог