我试图使用WinForms和Facebook .NET SDK在Facebook上发布自己的状态。我使用下面的代码发布图像。我收到此错误: “用户尚未授权应用程序执行此操作”
我查看了类似的问题,但他们处理从网络应用程序发布到其他用户的页面,需要在确认页面上进行手动授权。 我没有找到我在Facebook上授予自己这个权限的地方。我可能也错过了代码中的设置。
有什么想法吗?
private bool PostImage(string UserToken, string Status, string ImagePath)
{
try
{
FacebookClient fb = new FacebookClient(UserToken);
//for testing. id & name have values -----
dynamic me = fb.Get("me");
var id = me.id;
var name = me.name;
// ----------------------------------------
var imgstream = File.OpenRead(ImagePath);
dynamic response = fb.Post("/me/feed", new
{
message = Status,
file = new FacebookMediaStream
{
ContentType = "image/jpg",
FileName = Path.GetFileName(ImagePath)
}.SetValue(imgstream)
});
return true;
}
catch (Exception ex)
{
return false;
}
}
答案 0 :(得分:0)
您尝试代表用户发布状态意味着您的应用需要使用“publish_actions”获得用户的许可。
参考:https://developers.facebook.com/docs/facebook-login/permissions/v2.5#reference-publish_actions