当我尝试使用libcurl上传图片时,获取“消息”:“(#324)需要上传文件”

时间:2012-07-03 12:20:05

标签: facebook libcurl image-uploading

我想将本地图片文件上传到Facebook。 我使用c ++所以我不能使用facebook提供的任何SDK。 我正在使用libcurl。我可以发布纯文本来提供但不能上传图片。 下面是一些代码:

char url[1024];
char data[1024];
strcpy(url,"https://graph.facebook.com/userid/photos");
sprintf(data,"access_token=%s&source=@%s&message=testPhotos",m_strAccessToken,picPath);

CURL *curl;
curl = curl_easy_init();
if(curl)
{
   curl_easy_setopt(curl, CURLOPT_POST, 1 );
   curl_easy_setopt(curl, CURLOPT_URL, url);
   curl_easy_setopt(curl, CURLOPT_POSTFIELDS, data);
   curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 0);
   curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, ::ProcessResult);
}

picPath是bmp文件位于磁盘上的位置,如“c:\ file.bmp”

我总是得到这样的结果

  "error": {
"message": "(#324) Requires upload file", 
"type": "OAuthException", 
"code": 324

}

如何正确地做到这一点?

0 个答案:

没有答案