#javascript #node.js #reactjs #ebay-api
#javascript #node.js #reactjs #ebay-api
Вопрос:
Я интегрировал API ebay и хочу создать политику оплаты. В соответствии с этим руководством https://developer.ebay.com/api-docs/static/make-a-call.html я сгенерировал токен и отправил его этому почтальону. Но он выдает ошибку
{
"errors": [
{
"errorId": 1100,
"domain": "ACCESS",
"category": "REQUEST",
"message": "Access denied",
"longMessage": "Insufficient permissions to fulfill the request."
}
]
}
Пожалуйста, есть ли помощь или правильное руководство по полному заполнению.
Заголовки:
Комментарии:
1. Не могли бы вы показать нам свои заголовки?
2. Я отредактировал сообщение, пожалуйста, проверьте
3. Мне действительно нужно закончить это, я застрял с последних 6 часов
4. Убедитесь, что вы используете токен Oauth приложения, а не токен Oauth пользователя.
5. да, я использую токен OAuth приложения в соответствии с их руководством
Ответ №1:
Убедитесь, что вы используете правильные токены доступа. В eBay токен доступа пользователя и токены доступа к приложению являются отдельными объектами, которые используются для разных целей. Из документации eBay:
- Поток предоставления учетных данных клиента создает новый токен доступа к приложению, который вы можете использовать для доступа к ресурсам, принадлежащим приложению.
- Поток предоставления кода авторизации создает новый токен доступа пользователя, который вы можете использовать для доступа к ресурсам, принадлежащим пользователю.
Тот, который вы должны использовать в своем вызове, — это токен доступа пользователя.
Токен доступа к приложению чеканится при вызове https://api.sandbox.ebay.com/identity/v1/oauth2/token
с заголовком grant_type:client_credentials
. Токен доступа пользователя чеканится при вызове того же URL-адреса, однако с заголовками grant_type:authorization_code
или grant_type:refresh_token
.
Попробуйте обновить токен пользователя с помощью вызова https://api.sandbox.ebay.com/identity/v1/oauth2/token
с grant_type:refresh_token
заголовком и использовать его для авторизации вашего вызова вместо этого