使用c++从HTTPS请求JSON数据
Request JSON Data from HTTPS with C++?
我正在用c++编写一个程序,需要从HTTPS URL下载JSON数据。该程序基于wxWidgets。这个URL是Glosbe的翻译服务
所以我尝试了多个不同的库,包括:
- libcurl
- 提振。Asio
- wxWidgets 中包含的http功能
- wxCurl
- Urdl
但是,它总是抛出一个错误,说它不能连接,或者我得到一个回复,说"永久移动"。
当我复制并粘贴我正在测试的URL到浏览器中时,它会完美地返回JSON数据。
有谁知道这样做的正确方法吗?
任何帮助将是伟大的!
301 Moved permanent 是当您尝试使用HTTP而不是HTTPS访问页面时服务器响应的内容。以下是我刚刚从服务器收到的完整响应:
HTTP/1.1 301 Moved Permanently
Server: nginx
Date: Thu, 16 Jul 2015 20:25:01 GMT
Content-Type: text/html
Content-Length: 178
Connection: keep-alive
Location: https://en.glosbe.com/a-api
它的确切意思是:"您正在寻找的内容实际上是在https://en.glosbe.com/a-api。"您的浏览器遵循HTTP协议,遵循服务器的提示,并在您尝试访问http://en.glosbe.com/a-api
时自动继续请求https://en.glosbe.com/a-api
。作为用户,它可以无缝地为您工作。
您必须阅读更多文档才能自己创建HTTPS请求。您提到的每个库都有不同的方式支持HTTPS(或者根本不支持HTTPS)。例如,看看http://www.boost.org/doc/libs/1_58_0/doc/html/boost_asio/overview/ssl.html,特别是"Notes"部分,其中说"需要OpenSSL才能使用Boost"。Asio的SSL支持。"
相关文章:
- 如何使用curlpp通过POST方法上传文件和json数据
- 如何将 json 数据附加到 Qt 中的现有 json 文件中
- 修复错误的 JSON 数据
- 使用 JSONCPP 将 JSON 数据增量写入文件
- 如何使用 C++ 中的 cpprestsdk 发布 json 数据并从本地服务器获取响应
- 使用 C++ 解析 URL 中的 JSON 数据
- curl发送JSON数据不使用C 工作
- 如何使用NLHOMAN JSON将相同的密钥JSON数据合并到C 中
- 是否可以从OpenPose库中实时输出JSON数据
- 使用Nlohmann JSON将JSON数据保存在文件中时获取空值
- 如何将 JSON 数据发送到 REST API?
- 如何在 c++ 中使用 winhttp 将 json 数据发布到 api
- 如何使用 cpprestsdk 从websocket_client解析 json 数据
- 如何通过将JSON数据修改为RapidJson通过将其修改为其他模式
- 如何将C++应用程序与节点.js服务器连接以获取 JSON 数据
- 使用Boost的JSON数据
- Qt 和解析 JSON 数据C++
- 在C++/Qt中创建简单的WebService(充当服务器),提供JSON数据
- modern.ie 从网站中提取虚拟机 JSON 数据
- QNetworkAccessManager打开一个带有url的json数据