リクエストがlocalhost:5000
またはfoo.herokuapp.com
ホストからのものかどうか、およびどのパスがリクエストされたかを検出したい。 Flaskリクエストに関するこの情報を取得するにはどうすればよいですか?
いくつかの Request
フィールド でURLを調べることができます:
ユーザーが次のURLをリクエストします。
http://www.example.com/myapplication/page.html?x=y
この場合、上記の属性の値は次のようになります。
path /page.html script_root /myapplication base_url http://www.example.com/myapplication/page.html url http://www.example.com/myapplication/page.html?x=y url_root http://www.example.com/myapplication/
適切な分割を使用して、ホスト部分を簡単に抽出できます。
もう一つの例:
要求:
curl -XGET http://127.0.0.1:5000/alert/dingding/test?x=y
その後:
request.method: GET
request.url: http://127.0.0.1:5000/alert/dingding/test?x=y
request.base_url: http://127.0.0.1:5000/alert/dingding/test
request.url_charset: utf-8
request.url_root: http://127.0.0.1:5000/
str(request.url_rule): /alert/dingding/test
request.Host_url: http://127.0.0.1:5000/
request.Host: 127.0.0.1:5000
request.script_root:
request.path: /alert/dingding/test
request.full_path: /alert/dingding/test?x=y
request.args: ImmutableMultiDict([('x', 'y')])
request.args.get('x'): y
試してみてください:
request.url
Localhostでさえ、常に動作することを前提としています(実行しただけです)。