我试过了:
oAuthClient = new FacebookOAuthClient(FacebookApplication.Current);
oAuthClient.RedirectUri = callBack;
var parameters = new Dictionary<string, object>();
parameters.Add("permissions", "offline_access,publish_stream");
var loginUri = oAuthClient.GetLoginUrl(parameters);
这给我带来了访问令牌,我把它保存在数据库
中现在我尝试发布到facebook这样做:
var postparameters = new Dictionary<string, object>();
postparameters["message"] = tweet;
postparameters["name"] = "This is a name";
_fbClient = new FacebookClient(accessToken);
var result = _fbClient.Post("/me/feed", postparameters);
问题是这告诉我,我没有授权发帖。所以为了使它工作,我必须访问这个网址:
http://www.facebook.com/authorize.php?api_key=[key]&v=1.0&ext_perm=publish_stream
这也有问题导致此链接没有重定向回来!
所以问题是我如何使用publish_stream权限从第一个位置获取访问令牌?
答案 0 :(得分:1)
变化
parameters.Add("permissions", "offline_access,publish_stream");
到
parameters.Add("scope", "offline_access,publish_stream");