Javascript NodeJS HapiJS与OAUTH2和Salesforce(force.com)

Javascript NodeJS HapiJS与OAUTH2和Salesforce(force.com),javascript,node.js,oauth-2.0,salesforce,hapijs,Javascript,Node.js,Oauth 2.0,Salesforce,Hapijs,您好bell/hapi开发人员和/或专家。。。提前感谢您的任何建议。。。我正在尝试为oauth完成一个forcedotcom策略(salesforce),它几乎可以工作了,我找不到任何关于这个错误的文档 我收到一个错误“[错误:获取自定义访问令牌失败]” 我的应用程序正确重定向到salesforce,提示登录salesforce域,进行身份验证,并正确返回回叫URL,但是,回叫URL路由/控制器失败,因为“isAuthenticated”为false,但我可以在请求中看到,从salesforce

您好bell/hapi开发人员和/或专家。。。提前感谢您的任何建议。。。我正在尝试为oauth完成一个forcedotcom策略(salesforce),它几乎可以工作了,我找不到任何关于这个错误的文档

我收到一个错误“[错误:获取自定义访问令牌失败]”

我的应用程序正确重定向到salesforce,提示登录salesforce域,进行身份验证,并正确返回回叫URL,但是,回叫URL路由/控制器失败,因为“isAuthenticated”为false,但我可以在请求中看到,从salesforce返回回叫的URL包含“code”参数(身份验证访问令牌和“状态”值。)

这是我的策略

//向服务器注册bell
server.register(require('bell')、function(err){
server.auth.strategy('forcedotcom'、'bell'{
提供者:{
协议:“oauth2”,
useParamsAuth:false,
auth:config.forcedotcom.authURL,
令牌:config.forcedotcom.tokenURL
},
IsSecurity:错,
clientId:config.forcedotcom.clientId,
clientSecret:config.forcedotcom.clientSecret,
密码:config.sessionokie.sessionSecret,
位置:config.forcedotcom.callbackURL
});

})
我认为您需要将
useParamAuth
设置为
true
。Salesforce要求
client\u secret
client\u id
作为查询参数,而不是标题


您也可以尝试这个库,它包括signrequest auth和oauth。

在来自hapi的开发人员的帮助下,我们看到salesforce在第二次调用/令牌请求中发出了400…另一篇与hapi无关的帖子通过对salesforce的oauth代码进行uri解码(第一次响应)解决了这个问题,然后发送到令牌回调。我不知道如何使用hapi执行此操作,但我们正在接近。这是问题的一部分,另一部分,我不好意思说是cookie SSL设置,在启用SSL cookie的localhost中测试以及从http浏览未正确设置cookie(