The valid characters are defined in RFC 7230 and RFC 3986

The valid characters are defined in RFC 7230 and RFC 3986

這篇介紹透過GET對jsp操作時,有特殊字元會被tomcat擋住之解決方法。

瀏覽器執行jsp

1
2
3
4
在瀏覽器執行 https://{host}/xxx.jsp?value={"A":"CCC"}

出現The valid characters are defined in RFC 7230 and RFC 3986錯誤訊息
因特殊字元被tomcat擋住。

不更動tomcat設定下之解決方法

1
2
3
curl --location --request POST 'https://{host}/xxx.jsp' --header 'Content-Type: application/x-www-form-urlencoded' --data-urlencode 'value={"A":"CCC"}'

在 xxx.jsp 需做 String value = URLDecoder.decode(RequestParser.getStringParameter(request, 3000, "value", null), "UTF-8");