Node.js 撤销salesforce令牌节点

Node.js 撤销salesforce令牌节点,node.js,oauth,salesforce,Node.js,Oauth,Salesforce,我正在尝试使用https请求(尝试了GET和POST方法)从nodejs撤销salesforce令牌 这是我的GET方法的代码 var token = user.token; var uri = token.instanceUrl+'/services/oauth2/revoke?token='+token.accessToken; console.log("data: "+postData+", options: "+JSON.stringify(postOptions)+ ", \r\n"

我正在尝试使用
https请求
(尝试了
GET
POST
方法)从
nodejs
撤销salesforce令牌

这是我的
GET方法的代码

var token = user.token;
var uri = token.instanceUrl+'/services/oauth2/revoke?token='+token.accessToken;
console.log("data: "+postData+", options: "+JSON.stringify(postOptions)+ ", \r\n" + uri);
https.get(uri, function(response){
    var buffer = '';
    console.log(response.statusCode);
    response.on('data', function (chunk) {
        buffer += chunk;
    });
    response.on('end', function(){
        console.log(buffer);
    });
});
但我一直在得到这个

error=unsupported_token_type&error_description=this%20token%20type%20is%20not%20supported, code: 400
我还尝试了浏览器中的地址,得到了
400错误请求
状态

已根据salesforce online文档设置了所有必需的选项


我遗漏了什么使它成为一个错误的请求?

我将向您展示如何使用该模块:

不知道您尝试使用的URL是什么,但是所有用户的登录URL都是相同的,您不必使用您的实例子域

从他们的文档中还要注意这一点:

对于沙盒,请使用test.salesforce.com而不是login.salesforce.com


我想这样试试。我之所以使用实例URL,是因为使用login.salesforce.com返回302状态码相同的结果,
statusCode:400,body:'error=unsupported\u token\u type&error\u description=this%20token%20type%20is%20not%20supported'
如果您确定要传递的是
access\u token
,请注意撤销方法仅适用于OAuth2,因此,您必须确保在登录用户时使用的是OAuth2流。签出——使用OAuth2和access_令牌支持LinkedIn.yes的OAuth1.0和OAuth2流。当我在浏览器中访问此地址时得到相同的结果,这意味着它必须与salesforce或应用程序设置有关。我已启用了在任何时候代表您执行请求的
权限。你知道是否需要任何特定的设置/权限来启用撤销吗?看看这个,这就是成功撤销的样子。Salesforce实际上会将您重定向到实例域。如果我再次执行相同的代码,我会得到与您相同的错误,因此我假设您的
access\u令牌已被撤销。我还更新了我的答案,您需要再设置一个请求选项-
followAllRedirects:true
var request = require('request')
request.post('https://login.salesforce.com/services/oauth2/revoke', {
  form: {
    token: '[ACCESS_TOKEN]'
  },
  followAllRedirects: true
}, function (err, res, body) {})