gpt4 book ai didi

c++ - gSOAP - 修改 HTTP POST header

转载 作者:塔克拉玛干 更新时间:2023-11-01 19:08:25 25 4
gpt4 key购买 nike

我正在使用 gSOAP 生成的类来发送和接收 SOAP 消息。问题是当我像这样使用代理时:

service.proxy_host = "some-proxy.mydomain.com";
service.proxy_port = 8080;

正在修改 POST header 并发送整个端点 URL 而不仅仅是像这样的应用程序 URL:

POST https://my-portal-server.mydomain.com/ecater/ws/rbiecat:data/some_Port HTTP/1.1

不仅仅是这个:

POST /ecater/ws/rbiecat:data/some_Port HTTP/1.1

谁能告诉我如何在发送请求之前修改 POST header ?还是我做错了什么?

最佳答案

soap->proxy_host 被设置时,完整的 URL 被用在 POST header 中,因为代理需要一个绝对路径来连接到目标端点。这是合规要求。

或者,您可以定义一个回调来覆盖 HTTP post 操作,如下所示:

soap_init1(&soap, ...); // etc
soap->fpost = myhttppost
...
int myhttppost(struct soap *soap, const char *endpoint, const char *host, int port, const char *path, const char *action, size_t count)
{
// see stdsoap2.cpp http_post() for code to customize your HTTP POST operation
}

关于c++ - gSOAP - 修改 HTTP POST header ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27109070/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com