[英]get permanent facebook access token
我已經使用JSDK為我的facebook應用程序驗證用戶身份。 我正在獲取訪問令牌,但它在1/2小時內過期。 那么如何獲得長期訪問令牌?
我使用的代碼是:
var fb = new FacebookClient();
Dictionary<string,Object> sParams=new Dictionary<string,Object>();
sParams.Add("client_id",My_App_ID);
sParams.Add("client_secret",My_App_Secret);
sParams.Add("grant_type","fb_exchange_token");
sParams.Add("fb_exchange_token",Short_lived_accessToken);
dynamic result = fb.Get("oauth/access_token",sParams);
fb.AccessToken = result.access_token;
但它在行dynamic result = fb.Get("oauth/access_token",sParams);
時給了我錯誤無效的JSON字符串 dynamic result = fb.Get("oauth/access_token",sParams);
我在這里做什么錯?
使用此代碼:
var client = new FacebookClient(Short_lived_accessToken);
dynamic result = client.Post("oauth/access_token", new
{
client_id = My_App_ID,
client_secret = My_App_Secret,
grant_type = "fb_exchange_token",
fb_exchange_token = Short_lived_accessToken
});
Response.Write("Long live access token: [" + result.access_token + "]");
希望能幫助到你。
您將從端點獲得的返回結果不是 JSON,而是表單中的純文本
access_token=new_long-lived_access_token&expires=5130106
因此,您必須以某種方式告訴您的應用程序(?),結果不是JSON; 或者,如果FacebookClient :: Get始終期望答案為JSON,則可能必須完全使用其他方法來發出請求。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.