我正在使用带有Windows窗体客户端应用程序的visual studio 2013 .NET 4.5和C#,我正在尝试将消息发布到我自己的Facebook托管页面。我创建了一个新的Facebook应用程序,但尚未发布它,我不确定设置,但我有app_id,app_secret,并且从调试我有access_token。
我使用一段代码打开浏览器窗口以使用权限登录,这是成功的
我收到以下错误:
OAuthException - #200)(#200)用户尚未授权应用程序执行此操作
我正在使用的代码如下:
var fb = new FacebookClient("AUTH_CODE")
dynamic parameters = new ExpandoObject();
parameters.message = "hello tweet tweet";
dynamic result = fb.Post("SITE_ID/feed", parameters);
var id = result.id;
登录我正在使用:
var client = new FacebookClient();
client.AppSecret = app_secret;
client.AppId = app_id;
client.AccessToken = "AUTH_CODE";
var fbLoginUri = client.GetLoginUrl(new
{
client_id = app_id,
redirect_uri =
"https://www.facebook.com/connect/login_success.html",
response_type = "code",
scope = "manage_pages,offline_access,publish_stream,publish_actions"
});
System.Diagnostics.Process.Start(url);
我已登录,浏览器上的消息显示SUCCESS ...
我引用的DLL是最新的v6.0 Facebook C#SDK
我是否需要设置Facebook应用程序,以便它有权发布到我的托管墙上,如果是,我该怎么做。
我希望那里有人可以提供帮助,我已经看了好几天了,我需要一些帮助。
PS:
我也尝试过以下代码:
var fb = new FacebookClient();
dynamic result = fb.Get("oauth/access_token", new
{
client_id = app_id,
client_secret = app_secret,
grant_type = "client_credentials",
scope = "manage_pages,offline_access,publish_stream"
});
var app_token = result.access_token;
var client = new FacebookClient(app_token);
dynamic parameters = new ExpandoObject();
parameters.message = "Check out this funny article";
parameters.link = "http://www.natiska.com/article.html";
parameters.picture = "http://www.natiska.com/dav.png";
parameters.name = "Article Title";
parameters.caption = "Caption for the link";
//446533181408238 is my fan page
client.Post("/446533181408238/feed", parameters);
保罗。