AJAX的url问题和js实现浏览器跨域访问

JavaScript在发送AJAX请求时,url的域名地址是使用绝对地址还是相对地址
无论是使用相对地址还是绝对地址发送Ajax请求都是可以的,两者在发送请求时,服务器访问的地址都会转化为绝对地址。但如果使用相对地址的话,一定要注意填写正确,不然可能导致服务器访问的地址不是你想要的地址。
例如使用"login.java",服务器访问的可能是"http://localhost:8080/keti/login.java"。而"/test/login.java",服务器访问的可能是"http://localhost:8080/test/login.java"。最终访问到的结果不同。

什么是浏览器跨域访问操作,js如何实现?
跨域是指不同域名之间相互访问。
实现:

1、JSONP跨域:利用script脚本允许引用不同域下的js实现的,将回调方法带入服务器,返回结果时回调

2、跨域资源共享(CORS)

跨域资源共享(CORS)是一种网络浏览器的技术规范,它为Web服务器定义了一种方式,允许网页从不同的域访问其资源

CORS与JSONP相比:
a、JSONP只能实现GET请求,而CORS支持所有类型的HTTP请求
b、JSONP主要被老的浏览器支持,它们往往不支持CORS,而绝大多数现代浏览器都已经支持了CORS
c、使用CORS,开发者可以使用普通的XMLHttpResquest发起请求和获得数据,比起JSONP有更好的错误处理

上一篇:Cannot connect to the Maven process. Try again later. If the problem persists, check the Maven Impor


下一篇:前后端分离项目解决跨域问题