我已经阅读了 URLEncoder 和 URLDecoder 的 javadocs。然后就更加好奇了。将服务器视为 tomcat。在任何 Web 应用程序中,每当我们提交时 表单,服务器将表单字段转换为 urlencoded 字段,当我们执行 request.getParamter("fieldName") 时。服务器再次使用 URLDecoder 对其进行解码。 这是正确的吗?是服务器做的还是浏览器做的? 类似地,当我们在地址栏中输入任何网址时,也会发生同样的事情吗? 如果服务器或浏览器这样做 当我们需要借助 URLEncoder 和 URLDecoder 对请求参数进行显式编码或解码时?虽然这些都是基本问题,但无法清楚地找到这些答案。
最佳答案
In any webapplication whenever we submit the form , server converts the forms fields into urlencoded fields and when we do request.getParamter("fieldName").
没有。浏览器就是这样做的。
Server again decode it with URLDecoder. Is that correct?
是的。
Does server do it or browser?
浏览器。
If server or browser does that when we require to encode or decode the request parameter explicitly with the help of URLEncoder and URLDecoder?'
我不知道这意味着什么,但它仍然是浏览器。如果您从应用程序代码发送请求,则只需对请求参数进行编码。如果您在 servlet 容器中运行,则根本不需要对它们进行解码:它会为您完成此操作。
关于java - 有关 URLEncoder 和 URLDecoder 的一些问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10846901/