Tumblr реализует это поведение не так, как в Twitter, поэтому одно и то же использование библиотеки Ruby OAuth дает разные результаты.
Для вашего значения @callback_url это работает в Twitter:
@request_token = @oauth.get_request_token({
oauth_callback:@callback_url
})
redirect_to @request_token.authorize_url
Но для Tumblr вы будете перенаправлены на ваш URL-адрес по умолчанию.Чтобы указать другой URL, вы должны сделать следующее:
@request_token = @oauth.get_request_token
redirect_to @request_token.authorize_url + '&' + { oauth_callback:@callback_url }.to_query
Это соответствует их документации / сообщению в блоге (цитируется в другом ответе).Я не проверял, является ли это "правильным" согласно спецификации OAuth 1.0a.