0

我正在尝试编写一个简单的程序,它使用 libcurl 使用摘要身份验证执行 HTTP POST。

当我使用适当curlopt_easy_setopt的调用设置要发送的 XML 缓冲区时,它工作正常CURLOPT_POSTFIELDSCURLOPT_POSTFIELDSIZE然后调用curl_easy_perform.

但是,当我在设置为 1 后尝试连接CURLOPT_CONNECT_ONLY,然后使用curl_easy_send- 返回码(用于发送调用)是CURLE_UNSUPPORTED_PROTOCOL.

(当然,用户名、密码和digest认证方案之前都设置成功了)。

使用嗅探器,可以明显看出根本没有执行摘要协商。

我如何仍然使用curl_easy_send\ curl_easy_recvwith CURLOPT_CONNECT_ONLY,但让 libcurl 执行摘要协商?

提前致谢。

4

1 回答 1

0

好吧,这毕竟是不可能的。

curl_easy_send并且curl_easy_recv旨在实现自定义协议。

因此,我认为正在发生的是 libcurl 将执行的正常 HTTP 协议处理curl_easy_perform根本没有完成,因此没有可用的摘要 NTLM GSS 协商。

希望它会帮助某人。

于 2010-12-13T08:55:37.927 回答