Я пытаюсь поднять запрос post для создания токена-носителя через restclient в рельсах, но получаю 403 forbidden в качестве кода состояния

require 'base64'
require 'rest-client'
require 'json'

key="**************************"
secret="****************************************"
str="#{key}"+":"+"#{secret}"
encoded_str= Base64.encode64(str).delete("\n")
encoded_str = "Basic "+"#{encoded_str}"
response=RestClient::Request.execute(method: :post, url: https://api.twitter.com/oauth2/token', headers: {'Authorization': encoded_str, 'Content-Type': "application/x-www-form-urlencoded;charset=UTF-8"},body: {'grant_type': "client_credentials"})
puts response.code

потребительский ключ и секрет верны

encoded_str верен, проверено через почтальона.

проверьте эту ссылку twittercommunity.com/t/…

Pardeep Saini 11.04.2018 13:00

Спасибо, помогло. Также вместо RestClient я использовал HTTParty.

Ayush Baranwal 12.04.2018 10:41
0
2
173
1

Ответы 1

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

Другие вопросы по теме