2

我正在尝试使用 Facebook Ads api 获取哈希图像。我不明白如何拨打电话。我将图像 Url 作为字符串,将图像本身作为 Byte[]

这是 FB 文档中的示例:

curl -F 'test.jpg=@test.jpg' -F 'access_token= _ ' " https://graph.facebook.com/act_368811234/adimages "

test.jpg=@test.jpg 是什么意思?这不是我以前见过的东西。

您可以在以下位置找到相关的 Facebook 文档 URL:https ://developers.facebook.com/docs/reference/ads-api/adimage/

谢谢

4

1 回答 1

3

curl 请求的以下部分意味着发布一个名为 test.jpg 的参数,该参数引用当前目录中名为 test.jpg 的本地文件路径。

test.jpg=@test.jpg

如果您使用 c#,您可能需要查看 facebooksdk.net 提供的开源库(注意,它不是由 Facebook 生产的): http: //facebooksdk.net/docs/making-synchronous-requests/

使用它,它可能是几行代码:

var fb = new FacebookClient("access_token");
string attachementPath = @"C:\\image.jpg";
dynamic result = fb.Post("act_YOURACCOUNTID/adimages",
    new
    {
        file = new FacebookMediaObject
        {
            ContentType = "image/jpeg",
            FileName = Path.GetFileName(attachementPath)
        }.SetValue(File.ReadAllBytes(attachementPath))
    }
);

由于您还标记了 PHP,您可以使用 Facebook 生成的 Facebook SDK,代码如下:https ://github.com/facebook/facebook-php-sdk/

$facebook = new Facebook(array(                                                                                       
  'appId'  => 'YOUR_APPID',                                                                                      
  'secret' => 'YOUR_APPSECRET',                                                                     
));                                                                                                                   
$facebook->setAccessToken("YOUR_ACCESS_TOKEN");       
$facebook->setFileUploadSupport(true);                                                                                
$file='./test.jpg';                                                                                                   
$args = array(                                                                                                        
     basename($file) => '@' . realpath($file),                                                                           
);                                                                                                                    
$response = $facebook->api('/act_YOURACTID/adimages','post',$args);
于 2013-10-18T03:10:51.720 回答