ajax的url指的是发起请求的地址;ajax的url路径写法有两种,一种是包含协议、主机地址、端口号、项目名的完整请求路径,另一种是相对于当前请求地址的相对路径,语法为“$.ajax({type:…,url:…,data:…,success:…});”。
本文操作环境:windows10系统、javascript1.8.5&&html5版、Dell G3电脑。
ajax的url是什么
url是ajax发起的一个请求地址,看url:'A.jsp?ids='+id;中,ids是其发请求地址中的一个参数,这个请求在发过去后,ids参数值就是你后面加的id.
ajax的url的写法:
$.ajax({type: "POST", url: "some.php", data: "name=John&location=Boston", success: function(msg){alert( "Data Saved: " + msg );}});
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这一级下面。
【相关教程推荐:AJAX视频教程】