В настоящее время у меня возникают проблемы с методом OAuth для получения токена для потока предоставления кода авторизации.Я разрабатываю приложение на Python, чтобы автоматизировать определенные функции в моем магазине eBay.Мне удалось получить доступ с потоком предоставления клиентских учетных данных, но в моем случае недостаточно авторизации.
Теперь я хочу получить токен доступа с потоком предоставления кода авторизации, но не могуполучить код авторизации на первом этапе («Получение согласия сторонней организации на основании документации).Я пытался получить этот код авторизации в своем браузере, а затем использовать его в своем приложении, но у меня есть ошибка безопасности, сообщающая, что этот токен уже использовался, достаточно справедливо, это безопасность.
Я знаю, что яМне нужно отправить мои учетные данные, чтобы получить этот код авторизации, но я не знаю, как я могу обработать redirectUrl для разрешения пользователя.Вот что я сделал:
def GetAuthToken():
headers = {
'client_id' : 'xxxxxxx',
'redirect_uri' : 'xxxxx',
'response_type' : 'code',
'scope' : 'https://api.ebay.com/oauth/api_scope/sell.inventory',
}
tokenURL = 'https://auth.ebay.com/oauth2/authorize'
response = requests.get(tokenURL, headers=headers)
print(response)
authDict = response.json()
print(authDict)
GetAuthToken()
И я получаю эту ошибку:
Response [200]
{'error_id': 'unauthorized_client', 'error_description': 'The OAuth client was not found.', 'http_status_code': 401}
Это нормально, учитывая, что API ожидает учетные данные.Мой вопрос: как я могу аутентифицироваться, чтобы получить этот код авторизации с моей программой на python?В документации (https://developer.ebay.com/api-docs/static/oauth-consent-request.html), указано, что пользователю необходимо войти в систему вручную, чтобы получить этот код авторизации первого шага. Однако мне нужно автоматизировать эту аутентификацию.
Как отправлять параметры учетных данных вAPI для автоматизации этого шага?
В настоящее время я просматриваю библиотеку Python OAuth2, чтобы посмотреть, что я могу с этим сделать, я уверен, что это поможет. Я дам вам знать, ребята, если я найдуспособ автоматизировать это.
В любом случае, заранее спасибо за вашу поддержку! :)