残りのヘッダはアンダースコアで表示され、残りのヘッダ値は表示されません。Pythonボトルレストヘッダはアンダースコアでは機能しません
誰かが私がこの仕事をどうやってできるか考えていましたか?
ありがとうございます!
残りのヘッダはアンダースコアで表示され、残りのヘッダ値は表示されません。Pythonボトルレストヘッダはアンダースコアでは機能しません
誰かが私がこの仕事をどうやってできるか考えていましたか?
ありがとうございます!
ヘッダー名にアンダースコアを使用しないでください。区切り記号としてハイフンのみを使用してください。
ApacheやnginxなどのメインストリームWebサーバーと、いくつかのPython WSGIサーバー/フレームワークは、ヘッダーのなりすましを避けるために下線付きのヘッダーを破棄します。
あなたは、ヘッダーを持っている想像:CGI/WSGIで
My-Header: value
これは、変数に変換されます:
HTTP_MY_HEADER: value
アプリケーションに渡されたとき。
My_Header: value
も同様にマッピング:
問題は、ヘッダーがあることです。
ここで危険なのは、クライアントが1つを使用する可能性があり、プロキシなどの間で意図的に別のサーバーを試行して優先させて、サーバー/アプリケーションが処理するときに元のものを上書きできるということです。
これは潜在的なセキュリティ上の問題であるため、サーバーでは英数字とダッシュを含むヘッダーのみを通過させることができ、他のものは破棄されます。
こんにちはグレアム、 しかし、それは数ヶ月以来働いています、突然これは私が今変更することはできませんので、この変更もクライアント側に適用されるため停止します。 –
あなたはどのWSGIサーバーを使用していますか? WSGIサーバーが最近アップグレードされましたか? –
Apache/2.4.18(Ubuntu)mod_wsgi/4.3.0 Python/2.7.12が設定されています。 –
ヘッダーにアンダースコアを使用しないでください。たとえそれが働いていたとしても、あなたは止めるべきです。 –