401 Unauthorized: 解決方法

401エラーは、サーバーがあなたの身元を認識できていないことを意味します。これは403エラーとは異なります。403は、身元は認識されているものの権限が不足していることを意味し、401は認証に失敗したことを意味します。

幸いなことに、これは解決可能です。多くの場合、設定ミスが原因です。

401エラーの一般的な原因:

  • APIキーの入力ミス。キーの末尾にスペースが1つ入っているだけでも動作しなくなります。常にキーのトリム(空白削除)を行ってください。
  • キーの期限切れ。プロバイダーは予告なしに機能を停止することがよくあります。有効期限を確認してください。
  • 環境変数のエラー。コードが古い設定を使用している可能性があります。これはDockerコンテナでよく発生します。
  • ヘッダー形式の誤り。一部のAPIでは Bearer プレフィックスが必要なものもあれば、X-API-Key のようなカスタムヘッダーを使用するものもあります。
  • プロキシの問題。APIに到達する前に、ゲートウェイによってブロックされている可能性があります。

デバッグには以下のチェックリストを使用してください:

• 送信しているキーをプリントして、記録と一致しているか確認する。 • キーがまだ有効であることを確認する。 • ドキュメントと照らし合わせてヘッダー形式を確認する。 • ターミナルで curl コマンドを使用してキーをテストする。 • プロキシがヘッダーを変更していないか確認する。

リトライロジックの使用は控えましょう。401エラーをリトライしても解決しません。まずは認証情報を修正する必要があります。

出典: https://dev.to/laowuuu_dev/401-unauthorized-the-api-error-thats-easier-to-fix-than-you-think-3o4h