我正在尝试使用"用户名和密码"来验证HTTPS网址。在linux(Fedora 14 curl 7.30.0 (i686-pc-linux-gnu) libcurl/7.30.0 OpenSSL/1.0.0 zlib/1.2.5
))平台中使用基于C的curl API和curl命令行参数。
当我在Mozilla网络浏览器中使用该URL时,它会提示输入用户名,密码一次 - 在我按下" OK"我能够得到内容。但是,如果我按下取消按钮,"登录被用户取消"显示。附上错误(屏幕截图)。
如何验证和避免"用户取消登录"使用curl API和命令行参数的异常?
以下是我尝试的选项,但错误仍然相同 - "用户取消登录"
命令行:
curl -k --user "xxxxx:xxxxx" "https://fsgpos.opensoft.co.bw/ipa/statement/get/LN001234"
Curl API:
curl_easy_setopt(curl, CURLOPT_USERNAME,"xxxxxxxx");
curl_easy_setopt(curl, CURLOPT_PASSWORD,"xxxxxxxx");
如何使用有效的curl选项和API参数处理此异常?
答案 0 :(得分:0)
curl -X POST http://<auth url> --user "<username>:<password>" -c ~/cookies
答案 1 :(得分:0)
您是否提供客户端证书,客户端密钥和根证书
curl_easy_setopt(pcurlHandle, CURLOPT_SSLCERT, clientcertfile);
curl_easy_setopt(pcurlHandle, CURLOPT_SSLKEY, clientkeyfile);
curl_easy_setopt(pcurlHandle, CURLOPT_CAINFO, rootcertfile);
您的代码将有助于调试。
答案 2 :(得分:0)
在你的卷曲中使用UserAgent
字符串。与浏览器相比,这是您唯一缺少的。
-A "Mozilla 6.0"
此外,还要添加-v
参数,并向我们显示curl的调试消息。