无法弄清楚与curl命令相当的libcurl C / C ++代码

时间:2013-05-23 10:43:58

标签: c++ libcurl

我目前正在开发一个Visual Studio C ++项目,该项目需要使用libcurl访问我的网站使用Django的api。

我使用django-tastypie来提供api,现在我可以使用这个curl命令来使用这个api:

curl --dump-header - -H "Content-Type: application/json" -X PATCH --data '{"body": "This actually is my last post."}' http://localhost:8000/api/v1/entry/4/

更新我服务器上的数据。作为测试,它可以工作,但我真正需要的是使用libcurl在C / C ++中编写代码。

我刚刚开始关注libcurl而不太确定如何做到这一点。我认为我应该使用curl_easy_setopt,但我无法找到合适的选项。

所以我的问题是

  1. 是否可以使用libcurl实现与该命令相同的目标?我对libcurl不熟悉。
  2. 如果是这样,如何设置-x PATCHcontent-Type等选项?我看了document并且似​​乎没找到。
  3. 感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

正如@deltheil建议的那样,我尝试了--libcurl

但请注意,在我的情况下生成的代码并不完全正确。 -H "Content-Type: application/json"部分不在代码中。

你需要像这样设置标题

headers = curl_slist_append(headers, "Content-Type: application/json");
curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers);

但选项--libcurl非常有用。

关于C中json请求的这个post对我帮助很大。