我在我的 Asp.net MVC 项目中使用 ImpactWorks.FBGraph.dll 使用图形 API 在 facebook 中实现了 POST 的功能。最后当它调用函数 facebook.PostToWall() 然后给出错误远程服务器返回一个错误:(403)禁止。
我的代码如下
public Facebook FacebookAuth()
{
//Setting up the facebook object
Facebook facebook = new ImpactWorks.FBGraph.Connector.Facebook();
facebook.AppID = "XXXXXXXXXXXXXXX";
facebook.Secret = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX";
facebook.CallBackURL = "http://localhost/Retail_MVC/Facebook/Success";
//Setting up the permissions
List<FBPermissions> permissions = new List<FBPermissions>() {
FBPermissions.user_about_me, // to read about me
FBPermissions.user_events,
FBPermissions.user_status,
FBPermissions.read_stream,
FBPermissions.friends_events,
FBPermissions.publish_stream,
};
//Pass the permissions object to facebook instance
facebook.Permissions = permissions;
return facebook;
}
我的返回 URL 函数如下,在我使用 authLink 完成身份验证功能之前
public ActionResult Success()
{
Facebook facebook = auth.FacebookAuth();
string Code = Request.QueryString["code"];
Session["facebookQueryStringValue"] = Code;
facebook.GetAccessToken(Session["facebookQueryStringValue"].ToString());
FBUser currentUser = facebook.GetLoggedInUserInfo();
IFeedPost FBpost = new FeedPost();
FBpost.Message = "Hello, whats up"
facebook.PostToWall(currentUser.id.GetValueOrDefault(), FBpost);
return View();
}
当调用最后一个函数 PostToWall() 时,它会给出错误“远程服务器返回错误:(403) Forbidden。”
请给我适当的解决方案来解决这个问题。