Java/J2EE中访问服务器端资源的URL行为
我的部署描述符如下Java/J2EE中访问服务器端资源的URL行为,java,jakarta-ee,servlets,web-applications,Java,Jakarta Ee,Servlets,Web Applications,我的部署描述符如下 <servlet> <servlet-name>postServlet</servlet-name> <servlet-class>com.http.post.PostServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>postServlet</servlet-name&
<servlet>
<servlet-name>postServlet</servlet-name>
<servlet-class>com.http.post.PostServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>postServlet</servlet-name>
<url-pattern>/postServlet</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>postServlet</servlet-name>
<servlet-class>com.http.post.PostServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>postServlet</servlet-name>
<url-pattern/>
</servlet-mapping>
有人能用概括的方式来解释这种行为吗
然而,如果中间有空隙,它就失败了
/url/to/my/server/HTTPMethods////
这是有意义的,因为浏览器使用%20对空间进行编码
是否存在忽略尾随空格的具体原因
如果出现以下URL,则为失败
/url/to/my/server/HTTPMethods/////postServlet//读起来可能会很困惑,但您所有的问题都可以由 基本上,前导空格和尾随空格都是简单地去掉的(如果您确实需要将空格作为URL的一部分,那么您应该将它们编码为%20) 关于符号HTTPMethods///postServlet,多个斜杠被简单地视为一个斜杠
http://myserver:8080
/url/to/my/server/MyWebAppName
/url/to/my/server/MyWebAppName (few white spaces at the end of context)
/url/to/my/server/HTTPMethods/
/url/to/my/server/HTTPMethods/////
/url/to/my/server/HTTPMethods///postServlet
/url/to/my/server/HTTPMethods///postServlet (few white spaces here too)