バックグラウンド
今日、デバッグインターフェイスで、Spring Gatewayに直接アクセスすると、すべてのリクエストヘッダーパラメータは正常に読み取れるが、テスト環境に公開されてnginxによって転送されると、リクエストヘッダーのキーがapp_user_idであるパラメータが読み取られることがわかりました。は入手できません。
解決
同僚が [nginx request header missing] を検索したところ、nginx が下線付きのヘッダー情報を制限していることがわかりました。
解決策 1: nginx はアンダースコアをサポートしていないため、問題はありませんが、アンダースコアを使用しないでください。たとえば、元の old_token を old-token に変更できます。(通常、ヘッダーの名前は User-Agent のように - で連結されます)。
解決策 2:
nginx の nginx.conf 設定ファイルの http セクションに underscores_in_headers on を追加し、次のように設定します。
http {
mime.types を含めます。
デフォルトタイプアプリケーション/オクテットストリーム;
ファイルを送信します。
underscores_in_headers オン;
キープアライブタイムアウト 65;
}