gpt4 book ai didi

ruby-on-rails - OAuth::Unauthorized 401 在 rails 中对 omniauth-twitter 未授权

转载 作者:行者123 更新时间:2023-12-03 16:21:08 26 4
gpt4 key购买 nike

当我点击 [http://127.0.0.1:3000/auth/twitter] 时,我得到了 OAuth::Unauthorized
401 rails 中出现未经授权的错误。我正在关注 Railscast 视频 #241,以使用我的 Rails 应用程序进行 Twitter 身份验证。我用谷歌搜索了很多,但找不到答案。

 Info regarding app on twitter:
Callback URL: [http://127.0.0.1:3000/auth/twitter/callback]
Website: [http://127.0.0.1:3000]


### omniauth.rb
Rails.application.config.middleware.use OmniAuth::Builder do
# provider :developer unless Rails.env.production?
provider :twitter, ENV['75UOAIDmKrRXvXKBhNvKA'], ENV['GrIaBI0tQy2TtjOtaFL9VxT6s9qq1sV7h9yRaZW4A']
end

### routes.rb
Chilli::Application.routes.draw do
resources :posts
root :to => 'posts#index'
#match '/auth/:twitter/callback' => 'sessions#create', :as => :auth_callback
match 'auth/twitter/callback', to: 'sessions#create'
end

### application.html.erb
<div id="user_nav">
<%= link_to "Sign in with Twitter", "/auth/twitter"%>
</div>

### sessions_controller.rb
class SessionsController < ApplicationController
def create
user = User.from_omniauth(env['omniauth.auth'])
session[:user_id] = user.id
redirect_to root_url, notice: "Signed in."
end
end

### user.rb
class User < ActiveRecord::Base
attr_accessible :name, :provider, :uid
def self.from_omniauth(auth)
where(auth.slice("provider", "uid")).first || create_from_omniauth(auth)
end

def self.create_from_omniauth(auth)
create! do |user|
user.provider = auth["provider"]
user.uid = auth["uid"]
user.name = auth["info"]["nickname"]
end
end
end

最佳答案

omniauth.rb什么是ENV['75UOAIDmKrRXvXKBhNvKA'], ENV['GrIaBI0tQy2TtjOtaFL9VxT6s9qq1sV7h9yRaZW4A'] ?

75UOAIDmKrRXvXKBhNvKAGrIaBI0tQy2TtjOtaFL9VxT6s9qq1sV7h9yRaZW4A是你的 APP_IDAPP_SECRET那么它应该写成:

provider :twitter, '75UOAIDmKrRXvXKBhNvKA', 'GrIaBI0tQy2TtjOtaFL9VxT6s9qq1sV7h9yRaZW4A'

关于ruby-on-rails - OAuth::Unauthorized 401 在 rails 中对 omniauth-twitter 未授权,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15266051/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com