使用publish_stream从facebook获取访问令牌

时间:2012-02-22 14:46:19

标签: c# facebook

我试过了:

        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权限从第一个位置获取访问令牌?

1 个答案:

答案 0 :(得分:1)

变化

parameters.Add("permissions", "offline_access,publish_stream");

parameters.Add("scope", "offline_access,publish_stream");