【问题标题】:facebookclient.post() or .posttaskasync() with .net sdk returns invalid parameter when trying to post a link尝试发布链接时,带有 .net sdk 的 facebookclient.post() 或 .posttaskasync() 返回无效参数
【发布时间】:2014-09-15 03:38:47
【问题描述】:

我已经在我的应用程序的早期版本中使用过这个功能,我尝试使用旧代码,但我认为新的 sdk 有一些不同的地方。我只是想在墙上发布一个链接(包括图片)并收到“无效参数”响应。

这里是相关代码(我也试过 PostTaskAsync()...同样的结果):

var client = new FacebookClient(accessToken);
            var postParams = new
            {
                name = "the name",
                caption = "the caption",
                description = "the description",
                link = "http://www.example.com/",
                picture = "http://www.example.com/uploadedimages/myimage.jpg"
            };
            client.Post("me/feed", postParams);

我尝试用具有相同结果的 Dictionary 替换该对象。我试过用动态参数替换对象 = new ExpandoObject();结果相同。

如果我只使用 { message = "this is a test message" } 发布对象,它可以正常发布,因此我知道我有权在墙上发布。当我尝试发布带有图像的链接时,有些事情并没有发生。我还尝试对链接和图像 url 进行 urlencoding 并收到一个不同的错误,表明“链接/图片 URL 格式不正确”。

我删除了所有参数,认为其中一个不再受支持,但仍然没有骰子。

这里是抛出的确切异常:

Facebook.FacebookApiException: (FacebookApiException - #100) 无效 Facebook.FacebookClient.ProcessResponse(HttpHelper 中的参数 httpHelper,字符串 responseString,类型 resultType,布尔值 containsEtag, IList`1 batchEtags) 在 Facebook.FacebookClient.Api(HttpMethod httpMethod,字符串路径,对象 Facebook.FacebookClient.Post(String) 处的参数,类型 resultType) 路径,对象参数)

【问题讨论】:

    标签: facebook-graph-api facebook-c#-sdk


    【解决方案1】:

    我解决了这个问题。事实证明,链接和图片 url 必须与您用于发布的应用位于同一域中。

    编辑:只是为了澄清。该域必须包含在顶部“应用程序域”部分的应用程序配置部分(在 Facebook 上)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-10-31
      • 2015-11-28
      • 2010-09-22
      • 2014-11-18
      相关资源
      最近更新 更多