簡體   English   中英

用於匹配以斜杠(“/”)結尾的URL的Servlet URL模式

[英]Servlet URL pattern to match a URL that ends with a slash (“/”)

我想指定一個Servlet URL模式來匹配以斜杠(“/”)結尾的URL,而只是一個斜杠。

我理解這種模式

/example/path/*

將匹配的URL

http://example.com/example/path/

這似乎有效。 但是,相同的模式也會匹配的URL

http://example.com/example/path/a/
    http://example.com/example/path/b/
    http://example.com/example/path/c/

我只是在尋找一個匹配http://example.com/example/path/的網址格式,而不是匹配http://example.com/example/path/a/等等。

澄清:不允許以斜杠結尾的URL模式。

您很可能無法通過web.xml中的映射來完成此操作。

你可以做的是將servlet映射到/ mypath / *,然后通過request.getPathInto()檢查/ mypath /之后的部分。 如果是“/”,請運行您的代碼。 如果不是,則返回404錯誤。

在NetBeans中,如果我轉到web.xml文件上的Servlets選項卡,IDE會抱怨“錯誤:URL模式不能以斜杠(/)結尾”。 URL規范 ,它讀,

httpurl        = "http://" hostport [ "/" hpath [ "?" search ]]
hpath          = hsegment *[ "/" hsegment ]

所以是的,帶有結尾斜杠的URI無效。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM