0
我使用下面的代码将文本框内容发布到我的Facebook墙上,它的工作正常。使用c#winform在Facebook粉丝页发帖
private void btn_Post_Click(object sender, EventArgs e)
{
string appID, appSecret, userId;
appID = ConfigurationManager.AppSettings["AppID"].ToString();
appSecret=ConfigurationManager.AppSettings["AppSecret"].ToString();
userId = ConfigurationManager.AppSettings["UserID"].ToString();
var fb = new FacebookClient();
dynamic result = fb.Get("oauth/access_token", new
{
client_id = appID,
client_secret = appSecret,
grant_type = "client_credentials"
});
fb.AccessToken = result.access_token;
PostToWall(txt_status.Text, userId, fb.AccessToken);
}
private static void PostToWall(string message, string userId, string wallAccessToken)
{
try
{
var fb = new FacebookClient(wallAccessToken);
string url = string.Format("{0}/{1}", userId, "feed");
var argList = new Dictionary<string, object>();
argList["message"] = message;
fb.Post(url, argList);
MessageBox.Show("Posted");
}
catch (Exception ex)
{
MessageBox.Show("Error:" + ex.Message);
}
}
然后我创建了Facebook页面并尝试发布它。为此我启用了管理页面权限,但我无法获得页面访问令牌。 我如何能够通过C#代码动态地获取Facebook页面访问令牌来发布它。
当我试图登录到Facebook(在Windows窗体中的Web浏览器)获取用户访问令牌时,报告的错误发生。如何解决这个问题。 – Karthik
改变了整个问题......您需要实施正确的登录并确保用户实际上已获得授权。 – luschn
虽然点击Facebook上的帖子我已经尝试显示Facebook登录页面输入凭据,但它报告错误..字符串OAuthURL = @“https://www.facebook.com/dialog/oauth?client_id= [ app_Id]&redirect_uri = https://www.facebook.com/connect/login_success.html &response_type = token&scope = user_groups,user_status,read_friendlists,manage_friendlists,user_photos&type = user_agent&display = popup“; web_facebook.Navigate(OAuthURL); – Karthik