我正在使用devise和omniauth的Rails 3應用程序,並遵循https://github.com/plataformatec/devise/wiki/OmniAuth%3A-Overview中給出的示例,它在Facebook帳戶中運行良好,但是當我嘗試添加Twitter身份驗證時,出現'401未經授權的迴應。爲了跟蹤這個問題,我將api.twitter.com的URL切換爲http,並拋棄了網絡流量,它看起來像是發送到/ oauth/access_token兩次。第一次獲得200響應時,第二次給出401響應。在兩者之間,它使用'GET /1/account/verify_credentials.json'方法成功獲取經過身份驗證的用戶的用戶信息。我不明白爲什麼代碼第二次調用access_token方法。設計,Omniauth和Twitter
在我的配置/初始化/ devise.rb文件我加:
config.omniauth :twitter, "consumer_key", "consumer_secret"
除了在上述Omniauth概述頁面列出的代碼的其餘部分
。
我也在我的OmniauthCallbacksController加入了「嘰嘰喳喳」的方法,但它永遠不會被調用,由於401
任何幫助將非常感激。
設置了這個請求,你是否在OmniauthCallbacksController中檢查了你的twitter函數?如果出現錯誤,devise會拋出無效的響應錯誤,您可以嘗試在您的控制器 – Jimchao