2015-03-26 5 views
0

Мой клиент посылает:CXF не чтит Keep-Alive запрос клиентом

POST /xxx/yyy HTTP/1.1 
Host: localhost:9009 
User-Agent: gSOAP/2.8 
Content-Type: text/xml; charset=utf-8 
Content-Length: 2442 
Connection: keep-alive 
SOAPAction: "" 

Но сервер отвечает:

HTTP/1.1 200 OK 
Content-Type: text/xml;charset=UTF-8 
Content-Length: 11182 
Server: Jetty(8.1.14.v20131031) 

Не сервер должен вернуть «Connection: keep-alive "тоже?
Я вижу, что после этого клиент закрывает соединение, хотя он настроен, чтобы поддерживать соединение открытым.
Я предположил, что это связано с тем, что сервер не обеспечил сохранение в ответе (это RFC?).

ответ

0

В моем случае причина gSoap закрыл соединение не было связано с заголовками HTTP возвращается с сервера, но на самом деле вам нужно указать Keep-Alive флаги на обоих направлениях по телефону:

soap_set_imode(this, SOAP_IO_KEEPALIVE); 
    soap_set_omode(this, SOAP_IO_KEEPALIVE); 

Из того, что я прочитал в HTTP 1.1, постоянные подключения являются стандартными, поэтому, если сервер не вернул «Соединение: закрыть», соединение может быть использовано и для следующего запроса.

 Смежные вопросы

  • Нет связанных вопросов^_^