使用javascript实现新的离线访问令牌Facebook应用程序

使用javascript实现新的离线访问令牌Facebook应用程序,javascript,facebook,facebook-javascript-sdk,facebook-oauth,facebook-access-token,Javascript,Facebook,Facebook Javascript Sdk,Facebook Oauth,Facebook Access Token,我一直在使用JavaScript SDK与FacebookOAuth2.0合作。我看到Facebook最近更改了“无限”过期时间访问令牌功能,现在可以获得离线访问的访问令牌,其有效期最多为60天 我尝试了以下代码: FB.init({appId: 'XXXXXXXXXXXX', oauth: true , secret: 'XXXXXXXXXXXXXXXXXXXXXXXXX' }); // the real values of appId and secret are not displayed

我一直在使用JavaScript SDK与FacebookOAuth2.0合作。我看到Facebook最近更改了“无限”过期时间访问令牌功能,现在可以获得离线访问的访问令牌,其有效期最多为60天

我尝试了以下代码:

FB.init({appId: 'XXXXXXXXXXXX', oauth: true , secret: 'XXXXXXXXXXXXXXXXXXXXXXXXX' });
// the real values of appId and secret are not displayed for obv reasons
FB.login(function(response) 
{
  if(response.authResponse){

}
else{
 console.log('User cancelled login or did not fully authorize.');
}
}, {scope: 'read_stream,publish_stream,offline_access'});

在我的response:response.authResponse中,我收到一个访问令牌和一个值:expiresIn,大约6000。我不明白这个值意味着什么。如果我把它除以3600,我会说它给了我大约2个小时的有效期,这意味着这不是一个无限过期时间的访问令牌。我有没有办法申请有效期更长的访问令牌?请让我知道我做错了什么。

我认为这一政策变化现在令人困惑,因为他们今天正在改变这一点。
在新策略应用之前,您可能需要按说明更改应用程序配置。
我想您必须检查“拒绝脱机访问”设置。
只要未提供脱机\u访问且未应用新策略,访问\u令牌通常在2小时后过期