ホームページ  >  記事  >  バックエンド開発  >  ファイバーハンドラーが間違ったコンテンツタイプのリクエストを受け入れます

ファイバーハンドラーが間違ったコンテンツタイプのリクエストを受け入れます

WBOY
WBOY転載
2024-02-10 23:51:081217ブラウズ

Fiber 处理程序接受错误内容类型的请求

Fiber は、非同期、コルーチン、および同時アプリケーションの構築に使用できる効率的な PHP 拡張機能です。そのハンドラーは、JSON、XML などのさまざまなエラー コンテンツ タイプのリクエストを受け入れることができます。 Fiber を使用すると、開発者はさまざまな形式のリクエストをより柔軟に処理し、それに応じてエラーを処理できます。これにより、開発者はアプリケーションをより適切に管理および保守できるようになり、コードの堅牢性と保守性が向上します。この記事では、Fiber がさまざまな種類のリクエスト エラーを処理する方法について詳しく説明し、開発者に役立つアドバイスやヒントを提供します。

質問内容

ファイバー 2.44.0 を使用して単純な RESTful API を構築しており、1.20 に進みます。現在、特定のハンドラーで許容されるもの (非常に一般的なこと) を強制できるかどうかをテストしていますが、何か間違ったことをしているか、fibre.ctx.accepts が完全に従っていないようです。期待どおりに機能します。

これは私が定義した非常に単純なルートです。 ctx.accepts の使用法に注意してください...ただし、使用する accept http ヘッダーは関係なく、すべてのリクエストが通過します。

リーリー

この動作を回避し、ハンドラー/ルーティングを正しく構成する方法はありますか?

解決策

この関数のシグネチャは次のとおりです:

リーリー

この関数に渡した引用符の中で受け入れ可能な引用符を返します。リクエストの accept ヘッダーがどのオファーにも一致しない場合、空の文字列が返されます (実装を参照)。したがって、特定のハンドラーに受け入れ可能なものを強制的に受け入れさせたい場合は、単に戻り値が空の文字列かどうかを確認するだけです:

リーリー

以上がファイバーハンドラーが間違ったコンテンツタイプのリクエストを受け入れますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はstackoverflow.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。