使用libcurl将JSON字符串传递给HTTP GET方法

使用libcurl将JSON字符串传递给HTTP GET方法,json,get,query-string,libcurl,requirements,Json,Get,Query String,Libcurl,Requirements,我想通过HTTP GET方法传递一个JSON字符串。服务器端需要JSON,如下所示: const char* json[]= {\"revisions\":[{\"revision\":\"01\"},{\"revision\":\"02\"},{\"revision\":\"03\"},{\"revision\":\"04\"}]} 所以我打算这样传递JSON,但我不确定是否应该将其转换为查询字符串格式,如下所示: curl_easy_setopt(curl, CURLOPT_URL, "h

我想通过HTTP GET方法传递一个JSON字符串。服务器端需要JSON,如下所示:

const char* json[]= {\"revisions\":[{\"revision\":\"01\"},{\"revision\":\"02\"},{\"revision\":\"03\"},{\"revision\":\"04\"}]}
所以我打算这样传递JSON,但我不确定是否应该将其转换为查询字符串格式,如下所示:

curl_easy_setopt(curl, CURLOPT_URL, "http://example.com?{\"revisions\"[{\"revision\":\"01\"},{\"revision\":\"02\"},{\"revision\":\"03\"},{\"revision\":\"04\"}]}");

我知道在这种情况下我应该使用POST。然而,服务器端的需求要求使用GET。任何帮助都将不胜感激。

除了查询字符串,您还可以通过以下方式在HTTP GET请求中传递数据:

  • 标题:

    struct curl_slist *chunk = NULL;
    chunk = curl_slist_append(chunk, "JSON: {\"revisions\"[{\"revision\":\"01\"},{\"revision\":\"02\"},{\"revision\":\"03\"},{\"revision\":\"04\"}]}");
    curl_easy_setopt(curl, CURLOPT_HTTPHEADER, chunk);
    
  • 曲奇:

    curl_easy_setopt(curl, CURLOPT_COOKIE, "JSON={\"revisions\"[{\"revision\":\"01\"},{\"revision\":\"02\"},{\"revision\":\"03\"},{\"revision\":\"04\"}]}");
    
参考资料


除了查询字符串外,您还可以通过以下方式在HTTP GET请求中传递数据:

  • 标题:

    struct curl_slist *chunk = NULL;
    chunk = curl_slist_append(chunk, "JSON: {\"revisions\"[{\"revision\":\"01\"},{\"revision\":\"02\"},{\"revision\":\"03\"},{\"revision\":\"04\"}]}");
    curl_easy_setopt(curl, CURLOPT_HTTPHEADER, chunk);
    
  • 曲奇:

    curl_easy_setopt(curl, CURLOPT_COOKIE, "JSON={\"revisions\"[{\"revision\":\"01\"},{\"revision\":\"02\"},{\"revision\":\"03\"},{\"revision\":\"04\"}]}");
    
参考资料


将其传递给GET方法是什么意思?这些都是英语单词的组合,在说HTTP时没有任何意义。请详细说明您的HTTP请求应该是什么样子的@丹尼尔斯滕伯格。对不起,把你弄糊涂了。我的意思是如何通过GET方法向服务器提交这样的json字符串(参数)。我知道我应该通过查询字符串将其添加到uri,但我不确定是否需要将其转换为查询字符串格式“将其传递给GET方法”是什么意思?这些都是英语单词的组合,在说HTTP时没有任何意义。请详细说明您的HTTP请求应该是什么样子的@丹尼尔斯滕伯格。对不起,把你弄糊涂了。我的意思是如何通过GET方法向服务器提交这样的json字符串(参数)。我知道我应该通过查询字符串将其添加到uri中,但我不确定是否需要将其转换为查询字符串格式