我想知道在我的服务器上向API发送请求的最简单方法,然后使用任何库接收API的响应(json数组)。我尝试过像cURL& lib这样的库。没有任何运气的提升,这是我想远离他们的原因。我已经搜索了很多天的答案而且找不到任何东西,这就是为什么我要求进入堆栈溢出社区!
答案 0 :(得分:1)
即使问题是关于不使用库,我也借此机会展示使用库比用户认为更容易。
最好使用预先构建的库并停止重新发明轮子。您可以使用 curlcpp库。它是libcurl的包装器。使用此库可以轻松地进行HTTP请求。学习曲线也较少,它提供了C ++风格的访问,使得使用起来更加舒适。
以下代码来自他们的gitHub页面 - https://github.com/JosephP91/curlcpp
它向Google发出简单的 GET请求并检索HTML响应。您也可以使用此示例来点击apis。
#include "curl_easy.h"
#include "curl_exception.h"
using curl::curl_easy;
using curl::curl_easy_exception;
using curl::curlcpp_traceback;
int main(int argc, const char **argv) {
curl_easy easy;
// Add some option to the curl_easy object.
easy.add<CURLOPT_URL>("http://www.google.it");
easy.add<CURLOPT_FOLLOWLOCATION>(1L);
try {
// Execute the request.
easy.perform();
} catch (curl_easy_exception error) {
// If you want to get the entire error stack we can do:
curlcpp_traceback errors = error.get_traceback();
// Otherwise we could print the stack like this:
error.print_traceback();
// Note that the printing the stack will erase it
}
return 0;
}