gpt4 book ai didi

Android 和 libCurl https

转载 作者:行者123 更新时间:2023-11-30 03:28:22 25 4
gpt4 key购买 nike

晚上好

我需要在我们的一个 Android 项目中实现 libCurl。我使用 JNI 调用带有 libCurl 代码的 c++ 类。一切都很完美,但看在上帝的份上,我无法使用 https url 让它工作。我总是收到 CURLE_UNSUPPORTED_PROTOCOL 错误。

我正在使用 this prebuild curl library使用 SSL

我的 C++ 代码如下所示:

curl_easy_setopt(curl, CURLOPT_URL, "https://www.es....");
curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_data);
curl_easy_setopt(curl, CURLOPT_WRITEDATA, (void *)&chunk);
curl_easy_setopt(curl, CURLOPT_NOPROGRESS, 0);
curl_easy_setopt(curl, CURLOPT_PROGRESSDATA, (void *)&cbProgress);
curl_easy_setopt(curl, CURLOPT_PROGRESSFUNCTION, progress_func);
curl_easy_setopt(curl, CURLOPT_SSLVERSION, 3);

status = curl_easy_perform(curl);

我在 iOS 上使用相同的代码,它在 https 上运行良好。同样,使用 http url 就可以了。

非常感谢任何帮助!!

最佳答案

来自 libcurl errors manpage :

   CURLE_UNSUPPORTED_PROTOCOL (1)
The URL you passed to libcurl used a protocol that this libcurl
does not support. The support might be a compile-time option
that you didn't use, it can be a misspelled protocol string or
just a protocol libcurl has no code for.

编译时选项 是其中的重要内容。因此,使用 curl_version_info()(联机帮助页 here)测试您使用的库,看看它是否包含 SSL 支持。库文档可能会说它有 SSL 支持,但请确认。如果它不包含 SSL 支持,则没有 https

关于Android 和 libCurl https,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17873242/

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