400 Неверный запрос при использовании :oauth_callback

Я пытаюсь использовать гем oauth-ruby (https://github.com/oauth-xx/oauth-ruby/) в моем приложении Rails, чтобы пользователи могли аутентифицироваться с помощью стороннего API, но у меня возникают проблемы с корректной работой oauth_callback при использовании get_request_token. Вот код, который постоянно терпит неудачу:

@request_token = oauth_consumer.get_request_token(:oauth_callback => "http://myurl.com")

Это приводит к ошибке 400 Bad Request «OAuth:: Unauthorized» каждый раз. Однако, когда я удаляю это из своего кода, он возвращает токен запроса:

@request_token = oauth_consumer.get_request_token()

Проблема, с которой я сталкиваюсь, заключается в том, что при этом я не могу быть перенаправлен обратно в свое приложение после того, как пользователь прошел аутентификацию с третьей стороной. Это проблема с моим кодом или как-то связано с тем, как третья сторона обрабатывает oauth_callbacks?

Спасибо, Крис


person cmahon    schedule 21.08.2015    source источник


Ответы (1)


Эта ошибка, вероятно, возникла из-за того, что запрошенный вами API требует, чтобы вы сохранили хотя бы один URL-адрес обратного вызова. Просмотрите API и добавьте URL-адрес обратного вызова для тестирования/производства с панели управления, после чего API сможет проверять его при каждом вашем запросе.

person Wenceslao Negrete    schedule 21.08.2015
comment
Спасибо за ответ, проблема в том, что поставщик API не дал мне возможности сообщить им, каким я хочу видеть URL-адрес обратного вызова. Я предполагаю, что это означает, что проблема со сторонними поставщиками заканчивается, а не с моей? - person cmahon; 21.08.2015
comment
Да, это проблема поставщика или, по крайней мере, не проблема в том, как вы реализуете драгоценный камень. Может быть, у них есть конкретный URL-адрес для обратного вызова или реализация через javascript, которая может быть более полезной. - person Wenceslao Negrete; 23.08.2015
comment
Спасибо, приятно знать, что я не схожу с ума, думая, что делаю что-то не так :) - person cmahon; 24.08.2015