1
私はSpringベースのRESTful APIをTomcatサーバーにデプロイしています。このAPIを以下のように呼び出すと( "para"の値はURLエンコードされています)、デバッグすると、コントローラメソッドの "para"の値は既にURLデコードされた "aaa bbb"となります。URLデコードされたRESTful APIパラメータはどこにありますか?
- Iは同じAPIをテストするためにSpringBootベースのローカルテストオートメーションケース(どこにも展開されていない)を実行すると、コントローラ方法における「パラ」の値がなかった、しかしhttp://MY-TOMCAT-SERVER/SOME-PATH?para=aaa%20bbb
をGET URLデコードされました。
質問2つのシナリオの違いと、最初のシナリオで「パラ」URLデコードされた場所は何ですか?
私はTomcatのserver.xmlで構成され、このような属性を見つけることができませんでした。 – yasi
"指定されていない場合は、org.apache.catalina.STRICT_SERVLET_COMPLIANCEシステムプロパティがtrueに設定されている場合はISO-8859-1が使用されない限りUTF-8が使用されるため、" UTF-8 "ここでURLをデコードします。 – yasi
私は実際のデフォルト動作を知らない。しかし、UTF-8エンコーディングを有効にするために、古いTomcatバージョンのUTF-8にこのプロパティを設定する必要があります。 – Ralph