Authentication failure! invalid_credentials: OAuth::Unauthorized, 401 Authorization Required
I want to create Twitter login function,but error is occured.
My error is
Authentication failure! invalid_credentials: OAuth::Unauthorized, 401 Authorization Required
Processing by Users::OmniauthCallbacksController#failure as HTML
Parameters: {"oauth_token"=>"OFSEOwAAAAAA9LdUAAABaAyY_Uc", "oauth_verifier"=>"hogehogehoge"}
Redirected to http://localhost:3000/
initializers/omniauth.rb
Rails.application.config.middleware.use OmniAuth::Builder do
provider :twitter, 'agfrfgagfkfuauR1U8Busfd4KAiq', 'djkjsgkjgkasjkdfjskajfkjdskfjsk'
end
initializers/divise.rb
config.omniauth :twitter, ENV['TWITTER_API_KEY'], ENV['TWITTER_API_SECRET'], scope: 'email', oauth_callback: "#{ENV['HOST']}/users/auth/twitter/callback"
routes.rb
devise_for controllers: { registrations: "registrations", omniauth_callbacks: 'users/omniauth_callbacks' }
controllers/users/ominiauth.rb
class Users::OmniauthCallbacksController < Devise::OmniauthCallbacksController
# callback for twitter
def twitter
callback_for(:twitter)
end
def callback_for(provider)
@user = User.from_omniauth(request.env["omniauth.auth"])
if @user.persisted?
sign_in_and_redirect @user, event: :authentication #this will throw if @user is not activated
set_flash_message(:notice, :success, kind: "#{provider}".capitalize) if is_navigational_format?
else
session["devise.#{provider}_data"] = request.env["omniauth.auth"].except("extra")
redirect_to new_user_registration_url
end
end
def failure
redirect_to root_path
end
end
model/user.rb
devise :omniauthable, omniauth_providers: %i[twitter]
def self.from_omniauth(auth)
where(provider: auth.provider, uid: auth.uid).first_or_create do |user|
user.email = auth.info.email
user.password = Devise.friendly_token[0,20]
end
end
Please teach me a hint!
ruby-on-rails ruby devise omniauth omniauth-twitter
add a comment |
I want to create Twitter login function,but error is occured.
My error is
Authentication failure! invalid_credentials: OAuth::Unauthorized, 401 Authorization Required
Processing by Users::OmniauthCallbacksController#failure as HTML
Parameters: {"oauth_token"=>"OFSEOwAAAAAA9LdUAAABaAyY_Uc", "oauth_verifier"=>"hogehogehoge"}
Redirected to http://localhost:3000/
initializers/omniauth.rb
Rails.application.config.middleware.use OmniAuth::Builder do
provider :twitter, 'agfrfgagfkfuauR1U8Busfd4KAiq', 'djkjsgkjgkasjkdfjskajfkjdskfjsk'
end
initializers/divise.rb
config.omniauth :twitter, ENV['TWITTER_API_KEY'], ENV['TWITTER_API_SECRET'], scope: 'email', oauth_callback: "#{ENV['HOST']}/users/auth/twitter/callback"
routes.rb
devise_for controllers: { registrations: "registrations", omniauth_callbacks: 'users/omniauth_callbacks' }
controllers/users/ominiauth.rb
class Users::OmniauthCallbacksController < Devise::OmniauthCallbacksController
# callback for twitter
def twitter
callback_for(:twitter)
end
def callback_for(provider)
@user = User.from_omniauth(request.env["omniauth.auth"])
if @user.persisted?
sign_in_and_redirect @user, event: :authentication #this will throw if @user is not activated
set_flash_message(:notice, :success, kind: "#{provider}".capitalize) if is_navigational_format?
else
session["devise.#{provider}_data"] = request.env["omniauth.auth"].except("extra")
redirect_to new_user_registration_url
end
end
def failure
redirect_to root_path
end
end
model/user.rb
devise :omniauthable, omniauth_providers: %i[twitter]
def self.from_omniauth(auth)
where(provider: auth.provider, uid: auth.uid).first_or_create do |user|
user.email = auth.info.email
user.password = Devise.friendly_token[0,20]
end
end
Please teach me a hint!
ruby-on-rails ruby devise omniauth omniauth-twitter
add a comment |
I want to create Twitter login function,but error is occured.
My error is
Authentication failure! invalid_credentials: OAuth::Unauthorized, 401 Authorization Required
Processing by Users::OmniauthCallbacksController#failure as HTML
Parameters: {"oauth_token"=>"OFSEOwAAAAAA9LdUAAABaAyY_Uc", "oauth_verifier"=>"hogehogehoge"}
Redirected to http://localhost:3000/
initializers/omniauth.rb
Rails.application.config.middleware.use OmniAuth::Builder do
provider :twitter, 'agfrfgagfkfuauR1U8Busfd4KAiq', 'djkjsgkjgkasjkdfjskajfkjdskfjsk'
end
initializers/divise.rb
config.omniauth :twitter, ENV['TWITTER_API_KEY'], ENV['TWITTER_API_SECRET'], scope: 'email', oauth_callback: "#{ENV['HOST']}/users/auth/twitter/callback"
routes.rb
devise_for controllers: { registrations: "registrations", omniauth_callbacks: 'users/omniauth_callbacks' }
controllers/users/ominiauth.rb
class Users::OmniauthCallbacksController < Devise::OmniauthCallbacksController
# callback for twitter
def twitter
callback_for(:twitter)
end
def callback_for(provider)
@user = User.from_omniauth(request.env["omniauth.auth"])
if @user.persisted?
sign_in_and_redirect @user, event: :authentication #this will throw if @user is not activated
set_flash_message(:notice, :success, kind: "#{provider}".capitalize) if is_navigational_format?
else
session["devise.#{provider}_data"] = request.env["omniauth.auth"].except("extra")
redirect_to new_user_registration_url
end
end
def failure
redirect_to root_path
end
end
model/user.rb
devise :omniauthable, omniauth_providers: %i[twitter]
def self.from_omniauth(auth)
where(provider: auth.provider, uid: auth.uid).first_or_create do |user|
user.email = auth.info.email
user.password = Devise.friendly_token[0,20]
end
end
Please teach me a hint!
ruby-on-rails ruby devise omniauth omniauth-twitter
I want to create Twitter login function,but error is occured.
My error is
Authentication failure! invalid_credentials: OAuth::Unauthorized, 401 Authorization Required
Processing by Users::OmniauthCallbacksController#failure as HTML
Parameters: {"oauth_token"=>"OFSEOwAAAAAA9LdUAAABaAyY_Uc", "oauth_verifier"=>"hogehogehoge"}
Redirected to http://localhost:3000/
initializers/omniauth.rb
Rails.application.config.middleware.use OmniAuth::Builder do
provider :twitter, 'agfrfgagfkfuauR1U8Busfd4KAiq', 'djkjsgkjgkasjkdfjskajfkjdskfjsk'
end
initializers/divise.rb
config.omniauth :twitter, ENV['TWITTER_API_KEY'], ENV['TWITTER_API_SECRET'], scope: 'email', oauth_callback: "#{ENV['HOST']}/users/auth/twitter/callback"
routes.rb
devise_for controllers: { registrations: "registrations", omniauth_callbacks: 'users/omniauth_callbacks' }
controllers/users/ominiauth.rb
class Users::OmniauthCallbacksController < Devise::OmniauthCallbacksController
# callback for twitter
def twitter
callback_for(:twitter)
end
def callback_for(provider)
@user = User.from_omniauth(request.env["omniauth.auth"])
if @user.persisted?
sign_in_and_redirect @user, event: :authentication #this will throw if @user is not activated
set_flash_message(:notice, :success, kind: "#{provider}".capitalize) if is_navigational_format?
else
session["devise.#{provider}_data"] = request.env["omniauth.auth"].except("extra")
redirect_to new_user_registration_url
end
end
def failure
redirect_to root_path
end
end
model/user.rb
devise :omniauthable, omniauth_providers: %i[twitter]
def self.from_omniauth(auth)
where(provider: auth.provider, uid: auth.uid).first_or_create do |user|
user.email = auth.info.email
user.password = Devise.friendly_token[0,20]
end
end
Please teach me a hint!
ruby-on-rails ruby devise omniauth omniauth-twitter
ruby-on-rails ruby devise omniauth omniauth-twitter
edited Jan 4 at 11:20
ray
3,2041727
3,2041727
asked Jan 2 at 3:37
user10358924
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
Assuming you using gem devise
, omniauth-oauth2
& omniauth-twitter
,
Check your API key and API secret provided in your rails app whether it matches from your registered a Twitter app.
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f54000942%2fauthentication-failure-invalid-credentials-oauthunauthorized-401-authorizat%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
Assuming you using gem devise
, omniauth-oauth2
& omniauth-twitter
,
Check your API key and API secret provided in your rails app whether it matches from your registered a Twitter app.
add a comment |
Assuming you using gem devise
, omniauth-oauth2
& omniauth-twitter
,
Check your API key and API secret provided in your rails app whether it matches from your registered a Twitter app.
add a comment |
Assuming you using gem devise
, omniauth-oauth2
& omniauth-twitter
,
Check your API key and API secret provided in your rails app whether it matches from your registered a Twitter app.
Assuming you using gem devise
, omniauth-oauth2
& omniauth-twitter
,
Check your API key and API secret provided in your rails app whether it matches from your registered a Twitter app.
answered Jan 4 at 7:42
rayray
3,2041727
3,2041727
add a comment |
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f54000942%2fauthentication-failure-invalid-credentials-oauthunauthorized-401-authorizat%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown