完整的http请求过程
1、建立TCP连接
2、WEB浏览器向WEB服务器发送请求命令
3、WEB浏览器发送请求头信息(头信息:客服端环境信息,身份验证信息等)
4、WEB服务器应答
5、WEB服务器发送应答头信息
6、WEB服务器向浏览器发送数据
7、WEB服务器关闭TCP连接
跨域的几种常用方法
1、代理。
例如北京的前端 调用上海的服务器,那么在北京的服务器下简历一个服务前端去掉用,然后在北京服务器后台去调动上海的服务并或得数据返回给北京调用的前端。相当于北京的服务在后台做了一个代理。
2、jsonp
相当于是利用script标签去访问。
1 jQ跨域请求: 2 $.ajaxs({ 3 url: "xxx.com/sss.do?callback=?", 4 //url地址直接就写要跨域请求的地址,后边加上?callback=? 固定写法。 5 dataType: "jsonp", 6 jsonpCallback: "test", 7 //这个 后边的test就是 后端传过来的数据,外边整体包的那一层,让后端将他的数据用test();这样,test是商量好的名字。 8 success: function(d){ 9 //在这里直接处理d就行了。 10 } 11 })
特别注意两点:第一,如果是协议和端口造成的跨域问题“前台”是无能为力的,第二:在跨域问题上,域仅仅是通过“URL的首部”来识别而不会去尝试判断相同的ip地址对应着两个域或两个域是否在同一个ip上。