RailsアプリにTwitterログイン実装中に「401 Authorization Required」というエラーが出たときの対処法

Sponsored Link


401 Authorization Requiredっていうエラーが出ちゃったんだけど??

どうも、Linです。オペラデビュー、します。

 

RailsアプリにTwitterログイン機能を実装していたら

401 Authorization Required

という名前のエラーが出現。

 

401 Authorization Required

 

エラーの発生箇所を確認しても、具体的にどこかが間違っているのかよくわかりません。

お手本のコードを写経しただけだったので、コードの意味を理解していないのも痛手でした笑

にっちもさっちも行かない状況とはまさにこのこと。

 

そこでググってみたところ、次の神記事を発掘。

 

この記事によると、この「401 Authorization Required」というエラーは、

  1. アプリの設定画面のCallbackURLに何も入力されていない
  2. API KEY(CONSUMER KEY)とAPI SECRET(CONSUMER SECRET)の設定が間違っている
  3. コンピュータの時刻が狂っている
  4. アプリがTwitterからSuspendされてる

という4つの原因のいずれかであることがわかりました。

 

ってことで、それぞれの対処法を試してみて、エラーが解消できるか徹底検証です。

 

原因1. CallbackURLに何も入ってない

Twitterアプリの設定で、

CallbackURLに何も入れてない

という原因が考えられます。

 

この可能性を疑ってみましたが、いや、やはり、記載されてますね。

 

401 Authorization Required

 

原因2. コンピューターの時刻が狂ってる

コンピューターの時刻が1秒でも狂っていても、このエラーが出る可能性があるみたいです。

コンピューターの時刻は、こちらのサイトから確認できます。

うーん、合ってますね〜

 

401 Authorization Required

 

もし、0.1秒でも狂っている方は、タイムサーバーを変更する手があります。

 

Macでしたら、画面右上の日付をクリックして、

日付と時刻環境設定を開く

をクリック。

 

 

左下の鍵マークをクリックして、ロックを解除。

 

 

あとは、

日付と時刻を自動的に設定

の箇所を、

ntp.jst.mfeed.ad.jp

に変更するだけです。

 

 

しかし、いくら時計を正確に設定しても、先ほどのエラーは消えてくれてませんでした。

 

 

原因3. キーを打ち間違えている

続いては、

  1. API Key
  2. Secret Key

の2つを打ち間違えているというミス。

 

「いや、さすがにこれはないだろ・・・私に限って・・・・」

とおもって確認してみたところ、

 

うわっ、打ち間違えてる!笑

よく見ると、Secret Keyの先頭に半角のスペースが入っているではありませんか!

キーをコピーアンドペーストすると、このような失敗を犯すことがありますので要注意です。

 

 

401 Authorization Requiredというエラーは頑張れば消える

キーを修正したところ、401 Authorization Requiredというエラーは消え去りました。

これと同じエラーが出てしまっている方は、1つ1つの原因を上から潰してみてくださいね。

 

もし、

「うわああああああああエラー消えねえええ」

とキレそうになってる方には「teratail」がおすすめです。

エンジニア専門のQAサイトなので、現役のプロのエンジニアの方々が質問に答えてくれますからね。

よかったら使ってみてください。

 

それでは!

Lin

飯橋凛(Ihashi Lin)

インターネット広告代理店を1年半で退職。
その後、副業として活動していたウェブメディア運営のフリーランスへ。
現在はプログラミングの勉強に励み、0からフリーエンジニアの道を目指す。最近はキムチをまとめ買いにはまっている。


Sponsored Link

コメントはこちらからお願いします!



もう1本読んでみる