【发布时间】:2021-02-13 00:00:13
【问题描述】:
所以这是我从 Quickbooks 服务器获取 OAUTH2 令牌的函数:
app.get('/callback', function (req, res) {
oauthClient
.createToken(req.url)
.then(function (authResponse) {
oauth2_token_json = JSON.stringify(authResponse.getJson(), null, 2);
console.log("Token:", oauth2_token_json)
newToken = oauth2_token_json;
oauthClient.setToken(newToken);
res.send(newToken);
})
});
现在,我在这里调用 API 来推送新客户,但它以状态码 400 进行响应。这是 Quickbooks 库的一个函数,我们只需添加正文和回调函数即可直接调用 API。我也设置了参数,你可以在代码中看到
.then(
qbo = new QuickBooks('ABReS9hFdUzNlD8Np17ufW8WU5xLyL0M0rv3HvekbXJdZUiWzi',
'Uy9NXu2fKmumP3JoCrxKxKugzLkdHhi8Ca00GSBz',
`${newToken}`,
false, // no token secret for oAuth 2.0
'4620816365092507370', // the company name or id provided by Quickbooks
true, // use the sandbox?
true, // enable debugging?
null, // set minorversion, or null for the latest version
'2.0', //oAuth version
null)
.createCustomer({
"FullyQualifiedName": "King Groceries",
"PrimaryEmailAddr": {
"Address": "jdrew@myemail.com"
},
"DisplayName": "King's Groceries",
"Suffix": "Jr",
"Title": "Mr",
"MiddleName": "B",
"Notes": "Here are other details.",
"FamilyName": "King",
"PrimaryPhone": {
"FreeFormNumber": "(555) 555-5555"
},
"CompanyName": "King Groceries",
"BillAddr": {
"CountrySubDivisionCode": "CA",
"City": "Mountain View",
"PostalCode": "94042",
"Line1": "123 Main Street",
"Country": "USA"
},
"GivenName": "James"
}, function(err, customer){
console.log(customer)
})
)
当我发出请求时,它会访问正确的 URL。 ClientID 和 ClientSecret 完全正确。我不明白为什么我会收到此状态码。我已经更改了我正在使用的沙箱。我删除了旧沙箱并创建了一个新沙箱。谁能解释我该如何解决这个问题?
【问题讨论】:
标签: java jquery node.js api backend