前端后端路径问题详解

加了项目名,访问所有页面都是 在 项目名下 出来的路径

不加项目名,访问所有页面都不用加项目名,然后前后端的加/的效果都一样,都是在根目录下没有项目名的路径!!!

后端

一、MVC

1.不管是转发还是重定向,在MVC加 / 以后 就是 加了项目名的目录下 。

2.不加 / 就是当前路径下

二、在request和response下

1.转发是 加/ 就是在项目名的目录下

不加 / 就是当前路径下

2.重定向 加/就是在 根目录8080/ 下

不加 / 就是当前路径下

前端

1.加 / 就是在根目录8080下,不加项目名

2.不加 / 就是在当前路径下

所以一般在前端 jsp下 都是用 PageContext对象点 request 获得上下文路径,这就是在项目名目录下去寻找资源。

在前端HTML下

一般使用

//获取项目根目录
//http://localhost:8080/springmvc_demo01/static/html/index.html
var curWwwPath = window.document.location.href;
//获取主机地址之后的目录,如: /springmvc_demo01/static/html/index.html
var pathName = window.document.location.pathname;
var pos = curWwwPath.indexOf(pathName);
//获取主机地址,如: http://localhost:8080/
//var localhostPaht = curWwwPath.substring(0, pos);
//获取带"/"的项目名,如:/springmvc_demo01
var projectName = pathName.substring(0, pathName.substr(1).indexOf('/') + 1);

你可能感兴趣的:(SpringMVC,前端,spring)