Я пытаюсь взаимодействовать с API-интерфейсом Amazon по продажам (SP-API) для отправки запросов с помощью следующего приложения Flask. Токен доступа получен успешно, но при отправке запроса к конечной точке запросов я получаю несанкционированную ошибку с сообщением:
{
"error": {
"errors": [
{
"code": "Unauthorized",
"details": "The access token you provided is revoked, malformed or invalid.",
"message": "Access to requested resource is denied."
}
]
}
}
Почему я получаю сообщение об ошибке «Несанкционировано», хотя токен доступа успешно получен?
Может ли это быть связано с тем, как работает токен? используется или подписывается для запроса на предложение?
Я проверил, что мой профиль разработчика в Seller Central одобрен для объема предложений. Буду очень признателен за любую помощь в устранении неполадок! Что я пробовал:
Я следовал потоку OAuth для получения токена доступа и успешно сохранил как токен доступа, так и токен обновления.
Затем я использовал токен доступа для отправки запроса POST к конечной точке API запросов (/solicitations/productReviewAndSellerFeedback).
Я подписал запрос, используя подпись AWS версии 4, используя свои учетные данные пользователя IAM, и отправил запрос, используя библиотеку запросов. Что я могу сделать? Ожидается:
Я ожидал, что API обработает запрос и вернет успешный ответ (HTTP 200), указывающий, что запрос был принят.
Вместо этого я получил ошибку «Несанкционировано» (403) с сообщением о том, что токен доступа «отозван, имеет неверный формат или недействителен».
Я пытаюсь взаимодействовать с API-интерфейсом Amazon по продажам (SP-API) для отправки запросов с помощью следующего приложения Flask. Токен доступа получен успешно, но при отправке запроса к конечной точке запросов я получаю несанкционированную ошибку с сообщением: [code]{ "error": { "errors": [ { "code": "Unauthorized", "details": "The access token you provided is revoked, malformed or invalid.", "message": "Access to requested resource is denied." } ] } } [/code] [code]import boto3 import botocore from botocore.auth import SigV4Auth from botocore.awsrequest import AWSRequest from botocore.credentials import Credentials from flask import Flask, redirect, request, session, url_for, jsonify import requests
@app.route('/solicitations') def solicitations(): access_token = get_spapi_access_token() amazon_order_id = 'ORDER ID' # I put a real one marketplace_id = 'ATVPDKIKX0DER' solicitations_url = f'{SOLICITATIONS_URL}/{amazon_order_id}/solicitations/productReviewAndSellerFeedback?marketplaceIds={marketplace_id}' headers = {'x-amz-access-token': access_token, 'content-type': 'application/json'} request_obj = AWSRequest(method='POST', url=solicitations_url, headers=headers) credentials = get_aws_credentials() SigV4Auth(credentials, 'execute-api', AWS_REGION).add_auth(request_obj) prepared_request = requests.Request( method=request_obj.method, url=request_obj.url, headers=dict(request_obj.headers), data=request_obj.body ).prepare() response = requests.Session().send(prepared_request) return jsonify(response.json()), response.status_code [/code] Почему я получаю сообщение об ошибке «Несанкционировано», хотя токен доступа успешно получен? Может ли это быть связано с тем, как работает токен? используется или подписывается для запроса на предложение? Я проверил, что мой профиль разработчика в Seller Central одобрен для объема предложений. Буду очень признателен за любую помощь в устранении неполадок! [b]Что я пробовал:[/b] [list] [*]Я следовал потоку OAuth для получения токена доступа и успешно сохранил как токен доступа, так и токен обновления. [*]Затем я использовал токен доступа для отправки запроса POST к конечной точке API запросов (/solicitations/productReviewAndSellerFeedback). [*]Я подписал запрос, используя подпись AWS версии 4, используя свои учетные данные пользователя IAM, и отправил запрос, используя библиотеку запросов. [b]Что я могу сделать? Ожидается:[/b] [*]Я ожидал, что API обработает запрос и вернет успешный ответ (HTTP 200), указывающий, что запрос был принят. [/list] Вместо этого я получил ошибку «Несанкционировано» (403) с сообщением о том, что токен доступа «отозван, имеет неверный формат или недействителен».
Я пытаюсь взаимодействовать с API-интерфейсом Amazon по продажам (SP-API) для отправки запросов с помощью следующего приложения Flask. Токен доступа получен успешно, но при отправке запроса к конечной точке запросов я получаю несанкционированную...
Я пытаюсь взаимодействовать с API-интерфейсом Amazon по продажам (SP-API) для отправки запросов с помощью следующего приложения Flask. Токен доступа получен успешно, но при отправке запроса к конечной точке запросов я получаю несанкционированную...
Я пытаюсь взаимодействовать с API-интерфейсом Amazon по продажам (SP-API) для отправки запросов с помощью следующего приложения Flask. Токен доступа получен успешно, но при отправке запроса к конечной точке запросов я получаю несанкционированную...
В моем приложении React Native я получаю токен доступа и токен обновления после входа в систему.
Существует общая функция для повторного вызова токена доступа с использованием токена обновления при доступе. токен недействителен
На моей домашней...
В моем приложении React Native я получаю токен доступа и токен обновления после входа в систему.
Существует общая функция для повторного вызова токена доступа с использованием токена обновления при доступе. токен недействителен
На моей домашней...