本来就是想写一个html的测试链接,本意是代替人工在浏览器写测试链接了。发现HTTP的请求里不许带着”{}“,
<a href='/test/TCproducer?msg={"tcId":123123,"tcStr":"abcdef"}' target="rigthFrame"><font size="5">3.测试TC</font></a>
IDEA报错
o.apache.coyote.http11.Http11Processor : Error parsing HTTP request header
Note: further occurrences of HTTP request parsing errors will be logged at DEBUG level.
java.lang.IllegalArgumentException: Invalid character found in the request target. The valid characters are defined in RFC 7230 and RFC 3986
查了半天,转义字符替换一下就好了。Mark一下:
{ 转义成 %7B
} 转义成 %7D
<a href='/test/TCproducer?msg=%7B"tcId":123123,"tcStr":"abcdef"%7D' target="rigthFrame"><font size="5">3.测试TC</font></a>
本来写href=”xxxx“样子的时候,html规则也不许带这个双引号里再出现”,对于这个双引号,可以放在一对单引号里就行了。
应该也可以这样:
”转义成 %22