Trello API身份验证未提供有效的用户令牌

问题描述:

我正在使用Trello JS客户端为用户获取令牌。但是,即使我没有在该浏览器中登录Trello,它也一直给予我相同的权利。Trello API身份验证未提供有效的用户令牌

Trello.authorize({ 
    name: "Task Slayer", 
    type: "popup", 
    interactive: true, 
    expiration: "never", 
    success: function() { onTrelloAuthorizeSuccessful(); }, 
    scope: { write: true, read: true }, 
}); 

// Save the token after success call 
function onTrelloAuthorizeSuccessful() { 
    var token = Trello.token(); 
    $.get('https://api.trello.com/1/members/me/boards?key=' + TRELLO_CLIENT_KEY + '&token=' + token, {}, function(data){ 
     console.log(data); 
    }); 
} 

有关如何解决问题的任何想法?

+0

是有可能的是'$ .get'之前执行Trello.authorize'成功回调被称为?即在您的**开发人员工具控制台中**您是否看到“成功!令牌'在'GET https:// api.trello.com /'之前或之后启动? ...哦,以及'TRELLO_CLIENT_KEY'和'TRELLO_USER_TOKEN'变量如何设置?在你的代码中没有任何迹象表明这些是有声的 –

+0

@JaromandaX - 请假设这些变量是可用的。我可以看到它们正确地被包含在开发人员工具中的AJAX调用中。 GET功能是在授权成功功能后被调用的。它在ajax调用中具有正确的用户密钥:/ – jetlej

+0

所以你说'TRELLO_USER_TOKEN'被设置为'token'?你已经证实他们是一样的? – Jack

问题是,authorize()方法的参数'persist'默认为true。如果它是真的,它将存储在本地存储器中返回的第一个令牌,并在此之后不再进行身份验证。

所以我添加persist: false和它开始工作:)