online documentation Цитируя для HTTPClientSession
:
SendRequest() возвращает выходной поток, который может использоваться для отправки тела запроса. По завершении отправки тела запроса создайте объект HTTPResponse и передайте его на приемResponse().
Следующий фрагмент кода показывает один из способов, чтобы использовать выходной поток для чтения в файле:
try {
Poco::Net::HTTPClientSession session("www.example.com");
Poco::Net::HTTPRequest request(Poco::Net::HTTPRequest::HTTP_PUT, "/foo");
std::ostream& os = session.sendRequest(request);
std::ifstream ifs("thefile.txt"); // missing: error handling
Poco::StreamCopier::copyStream(ifs, os); // that's it :-)
Poco::Net::HTTPResponse response;
std::istream& rs = session.receiveResponse(response);
// Do something with rs...
} catch (Poco::Exception& e) {
std::cout << e.displayText() << std::endl;
}
Кроме того, посмотрите на slides for POCO Network programming. Они показывают, среди прочего, как использовать HTTPClientSession
.
Документация POCO является кратким и точным; стоит прочитать его.
У меня такая же проблема с почтовым запросом. Мой сервер не получает тело запроса, когда я пытаюсь отправить его, как вы описали. –