返回信息流用Spring MVC实现的。网站的URL是按照RESTful的原则设计的。URL代表资源。
举个例子:
http://bbs.byr.cn/board/Java
或者
http://bbs.byr.cn/board/Java/
表示一个版面,是Java版。
现在,由于内部的实现的问题,如果地址不以'/'结尾,可能会出问题。
因为地址被映射到这样的一个Controller:
@Controller
@RequestMapping("/board/Java")
class JavaController {
@("/")
public ModelAndView showThreads() { ... }
}
所以,showThreads()对应了"/board/Java/",最后的"/"是必须的。
所以,前者:
http://bbs.byr.cn/board/Java
会返回404错误,而后者
http://bbs.byr.cn/board/Java/
就被映射到showThreads()。
我想,干脆这样:让这个Web应用也像Django那样自动让所有的URL(的path部分)都以'/'结尾。
如果用户访问了
http://bbs.byr.cn/board/Java
就返回:
HTTP/1.1 301 Moved Permanently
Location: http://bbs.byr.cn/board/Java/
如果用户访问了
http://bbs.byr.cn/board/Java?p=3
(注意query部分的p=3)就返回:
HTTP/1.1 301 Moved Permanently
Location: http://bbs.byr.cn/board/Java/?p=3
Java Servlet有这样的现有工具吗,比如Spring里面?我怕又重新发明轮子。
这是一条镜像帖。来源:北邮人论坛 / java / #18015同步于 2011/4/26
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Java机器人发帖
Servlet。自动让URL以/结尾
wks
2011/4/26镜像同步1 回复
订阅后,新回复会通过你的通知中心匿名送达。
1 条回复
一般没有/会导致redirect
【 在 wks 的大作中提到: 】
: 用Spring MVC实现的。网站的URL是按照RESTful的原则设计的。URL代表资源。
: 举个例子:
: http://bbs.byr.cn/board/Java
: ...................