powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / gSoap and chunked-encoding
6 сообщений из 6, страница 1 из 1
gSoap and chunked-encoding
    #39602061
cutecode
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В проекте с gSoap, я настроил callback функцию, которая перехватывает получаемые данные, чтобы обработать их и заменить своими данными.

Код: sql
1.
static size_t plugin_recv(struct soap *soap, char *buf, size_t len)



но почему то она вызывается по частям, и в заголовке есть строка

Код: sql
1.
Transfer-Encoding: chunked




Можно ли как то отменить этот CHUNK чтоб получить XML файл полностью за один проход?
...
Рейтинг: 0 / 0
gSoap and chunked-encoding
    #39602072
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Transfer Codings Chunked Transfer Coding
...
All HTTP/1.1 applications MUST be able to receive and decode the "chunked" transfer-coding, and MUST ignore chunk-extension extensions
they do not understand.

P.S. Формально RFC2616 устарел и надо читать пачку RFC7230-7235, но "многабукав"
...
Рейтинг: 0 / 0
gSoap and chunked-encoding
    #39602079
cutecode
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо за документ, не знал про такое.

Но все таки хотелось бы чтоб gSoap за меня думал, а не я за него.

Ибо самому писать объединение этих "чанков" мутарно долго.
...
Рейтинг: 0 / 0
gSoap and chunked-encoding
    #39602080
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
cutecodeНо все таки хотелось бы чтоб gSoap за меня думал, а не я за него.

Ты всерьёз хочешь чтобы он всосал весь дочертамегабайтный документ, где-то его
забуферизовал и только потом скормил тебе на обработку? Обломись. И от кодировки это никак
не зависит. Делай свой парсер конечным автоматом и не придётся ничего склеивать.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
gSoap and chunked-encoding
    #39602082
cutecode
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: sql
1.
2.
   if ((soap->omode & SOAP_IO) != SOAP_IO_CHUNK)
      soap_set_omode(soap, SOAP_IO_STORE); // if not chunking we MUST buffer entire content to determine content length



только не работает оно в моем коде

Код: sql
1.
2.
 19.12  HTTP Chunked Transfer Encoding
gSOAP supports HTTP chunked transfer encoding. Un-chunking of inbound messages takes place automatically. Outbound messages are never chunked, except when the SOAP_IO_CHUNK flag is set for the output mode. Most Web services, however, will not accept chunked inbound messages. 




особенно интересно

Код: sql
1.
Un-chunking of inbound messages takes place automatically
...
Рейтинг: 0 / 0
gSoap and chunked-encoding
    #39602083
cutecode
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А хотелось бы как то так флагами настроить

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
	soap_set_omode(soap, SOAP_XML_INDENT);
	soap_set_omode(soap, SOAP_XML_CANONICAL);
	soap_set_imode(soap, SOAP_XML_INDENT);
	soap_set_imode(soap, SOAP_XML_CANONICAL);
	
	soap_set_omode(soap, SOAP_IO_STORE);
	soap_set_omode(soap, SOAP_IO_BUFFER);
	soap_clr_mode(soap, SOAP_IO_CHUNK);



Код: sql
1.
2.
soap_set_omode - установить для output
soap_clr_mode - Отменяет output и input
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / gSoap and chunked-encoding
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]