使用.net SDK获取相关的错误消息

时间:2015-04-14 12:37:48

标签: facebook facebook-c#-sdk

我使用Facebook广告api SDK for .net(http://www.nuget.org/packages/Facebook/6.4.2),当我发现错误时,该消息在异常消息对象中始终是相同的一般错误:

  

(FacebookApiException - #100)参数无效

这是因为我转移到版本化的调用(v2.2) - 在此之前我使用了无版本的调用,它很好。例如,这就是我得到错误的方法(在c#中使用常规的try catch):

try
{
    FacebookClient facebookClient = new FacebookClient();
    facebookClient.AccessToken = "<YOUR_ACCESS_TOKEN>"

    Dictionary<string, object> parameters = new Dictionary<string, object>();
    string name = Guid.NewGuid().ToString();
    parameters.Add("name", name);
    parameters.Add("conversion_specs", "");
    parameters.Add("campaign_id", "6024570447800");
    parameters.Add("creative", "{\"creative_id\":\"6024570452200\"}");
    parameters.Add("redownload", "false");
    parameters.Add("tracking_specs", "");
    parameters.Add("view_tags", "[]");

    var result = facebookClient.Post("v2.2/act_107893676040337/adgroups", parameters) as IDictionary<string, object>;
}
catch (Exception ex)
{
    FacebookApiException fbEx = ex as FacebookApiException;
    string errorMsg = fbEx.Message;
}

这是因为Facebook更改了返回错误对象并添加了2个新字段:error_user_title,error_user_msg。 有没有办法在FacebookApiException对象中访问这些字段? 如何提取相关的错误消息?

1 个答案:

答案 0 :(得分:2)

我潜入了这个问题,这不是Facebook的问题。问题出在第三方SDK中。

我联系了开发团队,他们知道这个问题并在上一个测试版中修复了它。