GETリクエストパラメータがで渡すとき?&パラメータで区切られた別々のパラメータと、ドメイン名、引数自体はアンパサンド内にある場合は、それらを識別、または意志それを区切りとして、ので、これらのデータは、送信時に、我々は有効にする必要がありません。李氏は、一般的でurlencodeコーディングに変わり、今で:%20%XX%の23
)(そこurllib.parse.unquote内でurlencodeのでurlencodeのコード化され、送信、およびPythonのコーディングでurlencodeを解決することができます|内部Jinja2のテンプレートでは、データを使用することができます
ビュー機能
HTML:HTMLを返すように「/」要求へのアクセス、HTML上のハイパーリンクをクリックして「/ RQ /」、get_request機能は、データと分析を取得
無使用でurlencodeコーディングので、考えられる&セパレータ、すなわちのみNAME1を取得します
Pthl
パス2
PATH3
プラスでurlencodeコーディング
フラスコインポートフラスコ、render_templateから
フラスコのインポート要求から
urllib.parse輸入にunquoteから
アプリ=フラスコ(__ name__)
@ app.route( "/")
:DEFインデックス()
の戻りrender_template( "index.htmlの")
@ app.route( "/ RQ /")
デフget_request():
"" "要求数据"""
名前= request.args.get( '名前'、 "没有获取到名")#获取指定参数
にunquote返す(名前)#解码
場合__name__ == '__main__':
app.run(デバッグ=真)
{%セット名= "名前= NAME1&名前2#NAME3" %}
<!DOCTYPE HTML>
<HTML LANG = "EN">
<HEAD>
<メタ文字コード= "UTF-8">
<タイトル>地址栏编码</ TITLE>
</ HEAD>
<BODY>
<a href="/rq/">跳转到パス1 </a>の
<a href="/rq/?name=name1">跳转到パス2 </a>の
<HREF = "/ RQ /?名= NAME1&名前2#NAME3">跳转到PATH3 </a>の
<a href="/rq/?name={{ name|urlencode }}">跳转到PATH4する</a>
< / BODY>
</ HTML>