按照 SP-API 开发人员指南,我创建了一个能够访问 SP-API 的应用程序。该应用程序现在处于已发布状态,我们按照亚马逊指南步骤尝试了授权工作流程:
我们正在使用网站授权工作流程,步骤 1-3 按照指南工作,
步骤 1. 从亚马逊卖家中心合作伙伴网络发起授权。步骤 2. 销售合作伙伴同意授权您的应用程序,我们从卖家中心授权应用程序并开始流程,此 url 加载 https://sellercentral.amazon.com/apps/authorize/consent?application_id=amzn1.sp.solution .6cf699bd-f89a-4afd-b64e-7d21351aaaaa
第 3 步。销售合作伙伴登录您的网站,我们被重定向到网站登录并完成,然后我们将亚马逊状态和合作伙伴 ID 作为 url 的一部分: https ://dashboard.aaa.com/api/ amzn/login?amazon_callback_uri=https%3A%2F%2Fsellercentral.amazon.com%2Fapps%2Fauthorize%2Fconfirm%2Famzn1.sp.solution.6cf699bd-f89a-4afd-b64e-7d21351aaaa&amazon_state=MTY0MzgzMjI2NzU2OADvv71PY8KzGA0Iaih1Nzjvv71bHNqRGO-_ve-_ve-_ve-_vRnvv70a77- 9eTF577-9Ee-_vRDvv70W77-9FEnvv73vv71ueO-_vR7vv73vv70PYu-_vUJd77-9B--_vTxF77-977-9f--_vQ%3D%3D&sales_partner_id=A2079RJZNKAAAA
我们在 url 中获取 sp_oauth_code 并尝试使用它通过 POSTMAN 请求请求刷新令牌,但无法继续从 amazon oauth 服务请求令牌。
我们收到错误 400 作为响应,这是来自邮递员代码部分的请求格式:
var axios = require('axios');
var qs = require('qs');
var data = qs.stringify({
'grant_type': 'authorization_code',
'code': 'ANnGBdMPnXAlrMyfUdwaaa',
'client_id': 'amzn1.application-oa2-client.cf71c857f2fd4f2c968851619bdaaaaa',
'client_secret': 'bba375434456e9917fcd5539c4324cc0e3182cccb9f1694ce3c63bee4f1aaaaa',
'redirect_uri': 'https://dashboard.aaa.com/api/amzn/redirect'
});
var config = {
method: 'post',
url: 'https://api.amazon.com/auth/o2/token',
headers: { },
data : data
};
axios(config)
.then(function (response) {
console.log(JSON.stringify(response.data));
})
.catch(function (error) {
console.log(error);
});
我们在 POST 请求中以 Json 格式发送 x-www-form-urlencoded 数据。
任何关于我们可以改变什么或检查任何缺失参数的指针 - 任何关于寻找什么的输入将不胜感激。