Первый вопрос, вы используете устройство? Если да, это должно быть проще, так как я создаю собственное приложение с помощью devise + omniauth + twitter Если вы этого не сделаете, даже если я сам начинающий разработчик рельсов, я постараюсь направить вас в правильном направлении.
Для начала вам нужно иметь аккаунт в твиттере. Затем вы должны авторизоваться здесь и создать свое приложение. Там на вкладке Settings
вы можете выбрать тип доступа или разрешений, которые вы хотите использовать для учетных записей Twitter вашего пользователя. В моем случае я использую Read only
, то есть я использую только Twitter для аутентификации. Поскольку вы, возможно, захотите, чтобы ваши пользователи обновляли свои статусы, вы можете взглянуть на другие 2 варианта: Read and Write
и Read, Write and Access direct messages
. Вы также должны определить URL-адрес обратного вызова, по которому Twitter возвращается после успешной аутентификации. Тогда у вас есть несколько косметических опций, чтобы настроить ваш диалог.
На вкладке Details
вы найдете Consumer key
и Consumer secret
, которые вы никогда не должны раскрывать и которые вам понадобятся в вашем приложении Rails.
В вашем приложении вы должны включить эти драгоценные камни (и запустить bundle install
впоследствии):
#Gemfile
gem 'omniauth'
gem 'omniauth-twitter'
Затем в ваших инициализаторах вы должны создать файл с именем omniauth.rb
(вы можете называть его как угодно, но это стандарт) со следующим:
#config/initializers/omniauth.rb
require 'omniauth-twitter'
config.omniauth :twitter, ENV['TWITTER_KEY'], ENV['TWITTER_SECRET']
В моем случае, поскольку я использую devise, я включил это в свой файл devise.rb
, но на самом деле не имеет значения, куда вы включаете его, если оно находится в файле в каталоге config/initializers
.
Обязательно посмотрите на следующие сайты:
Github Wiki Омниавта
Бесценные Railscasts Райана Бейтса