您的位置:首页 > 运维架构 > Tomcat

Tomcat下ajax请求路径总结

2017-11-19 17:05 211 查看
ajax的url有两种,一种是绝对路径,另一种是相对路径。

 

一、绝对路径:包括协议名称、主机地址、端口、web项目名称等的完整请求路径。

例如:

$.ajax({

    url:"http://localhost:8080/webname/test"

});

 

好处:比如在webA项目中的ajax需要请求webB项目中的服务,则必须使用绝对路径。

坏处:使用绝对路径要求古地理更web项目的名称,如果webB项目重命名了,则对应的ajax请求都需要修改。

 

二、相对路径:不需要协议名、主机地址、端口、web项目名称,只需要请求的路径。

假设:

项目路径:http://localhost:8080/webname

页面路径:/webname/index.html(A页面),/webname/test/test.html(B页面)

请求路径:/request/ajaxtest,request/ajaxtest

 

1、如果请求路径以根路径开头,则无论什么ajax在什么页面,该请求都是相对于服务器的根路径,最后的请求路径都是:http://localhost:8080/request/ajaxtest

例如:

$.ajax({

    url :"/request/ajaxtest"

});

原因:以"/"开头,是表示该请求基于从服务器的根路径,即不是相对于html的路径。

 

2、如果请求不以根路径开头(常见),则该请求路径是相对于html所在的路径的。

    a、假如请求在A页面,最终的请求路径是:http://localhost:8080/webname/request/ajaxtest。

    //     /webname/index.html页面

    $.ajax({

        url:"request/ajaxtest"

    });

    原因:index.html页面对应的路径是"/webname/",所以将url跟在这个路径下就是最终的请求路径。

 

    b、假如请求在B页面,最终的请求路径是:http://localhost:8080/webname/test/request/ajaxtest。

    //     /webname/test/test.html页面

    $.ajax({

        url:"request/ajaxtest"

    });

    原因:test.html页面对应的路径是“/webname/test/”,所以将url要跟在test这一级下面。

 

三、环境描述

web服务器:Tomcat7

MVC框架:springMVC

以上内容,都是基于该环境测试自行总结出的,并无理论依据,若有错误请留言。

该文章为转载,原文章地址:https://www.cnblogs.com/guanmu/p/5215833.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: