【发布时间】:2014-06-15 01:40:48
【问题描述】:
我正在尝试使用 node.js 连接到 Intuits v3 REST api。我正在使用 SuperAgent 和 superagent-oauth 来提出请求。我使用 Intuits Oauth playground 生成了访问令牌。但我不断收到“ApplicationAuthenticationFailed;errorCode=003200;statusCode=401”
这是我正在使用的。
var OAuth = require('oauth')
,request = require('superagent');
require('superagent-oauth')(request);
var oauth = new OAuth.OAuth('','', consumerKey, consumerSecret, '1.0.A', null, 'HMAC-SHA1')
request.get("https://quickbooks.api.intuit.com/v3/company/672198300/customer/102")
.set('Content-Type', 'text/plain')
.accept('json')
.sign(oauth,accessToken,accessTokenSecret )
.end(function (err, res) {
console.log(res.text)
})
这是回复
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<IntuitResponse time="2014-06-14T18:33:49.228-07:00" xmlns="http://schema.intuit.com/finance/v3">
<Fault type="AUTHENTICATION">
<Error code="3200">
<Message>message=ApplicationAuthenticationFailed; errorCode=003200; statusCode=401</Message>
</Error>
</Fault>
任何人都可以了解正在发生的事情吗?
【问题讨论】:
-
请使用正确的 Content-Type:application/json。我没有使用 node.js 尝试过这些调用。所以,不确定 Content-Type 是否是这里唯一的问题。谢谢
-
根据 SuperAgent 文档,accept('application/json') 是设置接受的有效方法。 visionmedia.github.io/superagent/#setting-accept。我错过了什么吗?
标签: node.js oauth intuit-partner-platform