在facebook ads api中获取图像的哈希码

时间:2013-10-17 09:26:22

标签: c# php facebook facebook-graph-api facebook-ads-api

我试图使用Facebook Ads api获取哈希图像。 我不明白如何打电话。 我有图片网址为字符串图片本身为字节[]

这是FB文档中的示例:

  

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

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

您可以在https://developers.facebook.com/docs/reference/ads-api/adimage/

找到相关的Facebook文档网址

谢谢

1 个答案:

答案 0 :(得分:1)

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);