After further test verification, the "getQuery" for chinese is fine 
but special characters like "%23" that will decode to "#".  the 
"getRawQuery" is opposite. 


maybe use "uribuilder.replaceParam" is better, but the "NettyHttpClientPlugin" 
can not support this.


I think if combining parameters manually is an option. 


------------------ Original ------------------
From: &nbsp;"zcq"<[email protected]&gt;;
Date: &nbsp;Sat, Oct 9, 2021 11:20 AM
To: &nbsp;"dev"<[email protected]&gt;; 

Subject: &nbsp;#2200, #2203 discussion(picture in pr#2203)

&nbsp;

Hi,
When arguments contain special characters, the original "DividePlugin" 
implementation uses "getQuery" which decode the arguments("decodeQuery" in 
picture), to escape those special characters. 


eg: GET http://localhost:9195/http/test/divide/raw?name=divide&amp;address=%23


see "getquery.png"


The result: see "getquery-ret.png"


But the "getRawQuery" will use the origin arguments("query" in picture).


the result: see "getrawquery-ret.png"




So if the arguments contain special characters, "getRawQuery" is better choice. 


The other way, user can encode arguments by self. 


&nbsp;https://github.com/apache/incubator-shenyu/pull/2203 page.

Reply via email to