0

我正在让自己绝望,试图使用 C# SDK 将专辑添加到 Facebook 页面。

认为我的代码没问题,因为我可以通过 SDK 和 API 在自己的个人资料页面上成功创建相册。因此,我预计某些东西会与我的访问令牌和权限等混淆。

我的 C# 代码在这里:

string accessToken = "TOKEN HERE";

FacebookClient facebookClient = new FacebookClient(accessToken);
var albumParameters = new Dictionary<string, object>();
albumParameters["message"] = "new message";
albumParameters["name"] = "new name";
facebookClient.Post("/412639422128107/albums", albumParameters);

我得到的错误是:(OAuthException - #1)发生了未知错误。

我在这里和网络上的其他地方阅读了大量关于获取页面访问令牌的帖子。我很确定我做对了 -

  1. 我去这个页面:https ://developers.facebook.com/tools/explorer
  2. 我输入“我/帐户”
  3. 我看到几个我是管理员的页面,并获取与我试图将相册添加到的页面 id 对应的访问令牌 (412639422128107)
  4. 我去这里检查这个访问令牌的权限: https ://developers.facebook.com/tools/debug/access_token?q=

  5. 我看到我有以下权限:create_event、create_note、manage_pages、photo_upload、publish_actions、publish_stream、read_stream、share_item、status_update、video_upload

但是,我显然没有做正确的事情,因为它不起作用!请问有人能指出我正确的方向吗?

提前感谢负载:)

4

1 回答 1

0

您可以使用此代码在 facebook 页面中创建相册。

string accessToken = "";

FacebookWebClient fbApp = new FacebookWebClient();


dynamic parametersForToken = new ExpandoObject();
parametersForToken.fields = "access_token";
try
{
  dynamic me = fbApp.Get(idExternalPage, parametersForToken);
  accessToken = me.access_token;
}
catch (Exception ex)
{
    return;
}


FacebookClient facebookClient = new FacebookClient(accessToken);
var albumParameters = new Dictionary<string, object>();
albumParameters["message"] = "new message";
albumParameters["name"] = "new name";
facebookClient.Post("/me/albums", albumParameters);

或试试这个

https://developers.facebook.com/tools/explorer?method=GET&path='Page_Id'%3Ffields%3Daccess_token

对不起,我正在测试我的脚本,我遇到了同样的问题。(仅用于创建画廊)

see this bug: https://developers.facebook.com/bugs/376442565760536?browse=search_50361119879b15494037772 (the bug is fixed)

于 2012-08-24T17:20:33.510 回答