首页 文章

如何使用其C#SDK更新Facebook访问令牌

提问于
浏览
3

感谢伟大的Facebook C#SDK,它简化了我处理Facebook API的工作 . 我正在使用sdk来获取尽可能多的数据,例如帖子,评论,用户信息,尽可能从Facebook,但我的程序在我的访问令牌在一段时间后到期后停止,我必须重新启动该程序 . 访问令牌来自https://developers.facebook.com/tools/access_token/,但如何续订令牌?这是http://csharpsdk.org/docs/web/handling-expired-access-tokens中的TOTO . 有谁可以帮助解决这个问题?非常感谢你 .

3 回答

  • 3

    这对我有用:

    public static string RefreshAccessToken(string currentAccessToken)
    {
            FacebookClient fbClient = new FacebookClient();
            Dictionary<string, object> fbParams = new Dictionary<string, object>();
            fbParams["client_id"] = "your app id";
            fbParams["grant_type"] = "fb_exchange_token";
            fbParams["client_secret"] = "your client secret";
            fbParams["fb_exchange_token"] = currentAccessToken;            
            JsonObject publishedResponse = fbClient.Get("/oauth/access_token", fbParams) as JsonObject;
            return publishedResponse["access_token"].ToString(); 
    }
    
  • -3

    这是我用来获得更长的到期令牌的方法

    FacebookClient fbcl = new FacebookClient(atoken);
    fbcl.AccessToken = //your short access token;
    fbcl.AppId = //your app id;
    fbcl.AppSecret = // your app secret;
    
    //try to get longer token
    try
    {
        dynamic result= fbcl.Get("oauth/access_token?client_id=APP_ID&client_secret=APP_SECRET&grant_type=fb_exchange_token&fb_exchange_token=" + atoken);
        atoken = result.access_token;
    }
    catch
    {
        dynamic result= fbcl.Get("oauth/access_token?client_id=APP_ID&client_secret=APP_SECRET&grant_type=fb_exchange_token&fb_exchange_token=" + atoken);
        atoken = result.access_token;
    }
    

    有时这会给出一个错误,例如“无法与FB Build 安全的SSL连接”或类似的错误 . 所以我再次尝试 grab 它 . 也许你可以解决这个问题并帮助我:)干杯

  • 3

    我最后通过使用offline_access权限解决了这个问题,您可以先参考:http://operatorerror.org/2011/07/get-a-facebook-api-access-token-that-never-expires/,您将知道如何获得永不过期的Facebook API访问令牌 .

    接下来,如果您遇到无法检查offline_access权限的问题,您可以参考此内容:offline_access permission not present in Graph api explorer in facebook graph api

相关问题