406 Not Acceptable エラー: 意味と修正方法

406 Not Acceptable エラー: 意味と修正方法

406 許容できないエラーは HTTP 応答ステータス コードであり、サーバーがデータを適切に返すことができない場合に表示されます。これはサーバー側の問題であるため、クライアントのリクエストは失敗し、コードは適切に実行されません。

これは、特に毎日さまざまなリクエストを処理するサービスを開発している場合には、大きな問題となる可能性があります。幸いなことに、この問題を解決する方法はあります。今日はその方法を紹介します。

「ステータス コード 406 で通話が失敗しました。受け入れられません」エラーとは何ですか?

サーバーから返されたデータが、リクエストを行ったクライアントと互換性のある適切な形式ではない場合、エラー コード 406 が表示されます。

これはセキュリティ対策であり、サーバーが予期した形式でデータを返さない場合、コードは実行されません。

エラー 406 を修正するにはどうすればよいですか?

1. コード内の accept パラメータを調整します

  1. コードを開きます。
  2. リクエストを送信する行を見つけて、次のように変更します。 profile = personality_insights.profile(profile_text, accept='application/json', content_type='text/plain').get_result()
  3. 変更内容を保存。

accept パラメーターでは application/json または text/csv 値のみを使用できることに注意してください。

2. JSON.stringify を使用する

  1. コードを開きます。
  2. 次のように、必ず JSON.stringify 関数を追加してください。$.ajax({ url: 'http://example.com:9200/incidents/incidents', type: 'POST', data: JSON.stringify(this.incident), dataType: 'json' })
  3. 最後に、変更を保存します。

この解決策は、オブジェクトが適切にシリアル化された JSON 文字列でない場合にのみ機能することに注意してください。

3. ヘッダーにユーザーエージェントを必ず指定してください

  1. コードエディタを開きます。
  2. 次に、リクエスト ヘッダーを追加し、次のように含めます。page_url = 'https://examplepage.com' headers = { 'user-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/102.0.0.0 Safari/537.36', } rawpage = requests.get(page_url,headers=headers)
  3. それが完了したら、変更を保存するだけです。

HTTP 404 と 406 の違いは何ですか?

HTTP 406 クライアント エラー応答は、クライアントが正当なリクエストを送信したが、返されたデータが受け入れられる形式ではない場合に表示されます。

一方、HTTP エラー 404応答コードは、最も一般的なクライアント側エラーの 1 つであり、おそらく最もよく知られている 4xx エラーです。要求されたデータが見つからなかったために要求を処理できない場合に表示されます。

406 許容できないエラーは、Java、Angular、および HTTP リクエストをサポートするその他の言語で表示されることがあります。この問題は通常、開発者に影響し、平均的なインターネット ユーザーには影響しません。

これを修正するには、サーバーからの特定の種類のデータを応答として受け入れるようにクライアントが構成されていることを確認してください。また、サーバーとクライアントの両方がサポートされている形式を使用するように、サーバー構成を変更して構成ファイルを調整することもできます。

これは、発生する可能性のある多くのエラーの 1 つにすぎません。過去にHTTP エラー 431HTTP エラー 413について説明しました。詳細な情報が必要な場合は、それらをお見逃しなく。

Nginx の 406 Not allowed エラーを修正するためにどのような方法を使用しましたか? コメントセクションで発見したことを私たちと共有してください。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です