由于此页面,我已经取得了一些进展:Facebook Error (#200) The user hasn't authorized the application to perform this action
然而,在发布为网页时,我现在已经迷失了。从评论中,我看到我需要
...获取页面访问令牌,方法是授予自己manage_pages权限,并从API调用中获取页面令牌/ me / accounts(使用最后一次调用的用户令牌)
我已经离开并授予自己manage_pages
权限,但如何对/me/accounts
进行API调用以获取页面令牌?一旦我获得了页面令牌,我只是简单地使用该令牌并保留我的代码吗?
以下代码:
var pageId = facebookPageId;
var app = new FacebookClient();
app.AccessToken = facebookAccessToken; // copied from Graph Explorer
dynamic messagePost = new ExpandoObject();
messagePost.access_token = facebookAccessToken; // copied from Graph Explorer
messagePost.link = "www.google.com";
messagePost.name = "some name";
messagePost.caption = "{test actor} " + "Test message"; //<---{*actor*} is the user (i.e.: Aaron)
messagePost.description = "Test description";
try {
var result = app.Post("/" + pageId + "/feed", messagePost);
} catch (FacebookOAuthException ex) {
var test = ex;
} catch (FacebookApiException ex) {
var test = ex;
}
答案 0 :(得分:1)
我已经离开并授予自己manage_pages权限,但如何对/ me / accounts进行API调用以获取页面令牌?
您使用API,我假设在app.Post
的C#SDK中有一个等效的调用app.Get
。看到这是个人应用,您可以再次使用开发者工具,从下拉列表中选择您的应用,授予自己manage_pages
权限,然后拨打/me/accounts
页面的页面标记应该在结果中。
您也可以通过致电PAGE_ID?fields=access_token