Ajax跨域问题

Ajax:Ajax即Asynchronous Javascript And XML(异步JavaScript和XML)
一,跨域介绍
1,什么是跨域

跨域它是不同的域名(服务器)之间的相互的资源的访问。 当协议,域名,端口号任意一个不相同,它们就是不同的域。 正常情况下,因为浏览器安全问题,不同域的资源是不可以访问的。 
2,跨域解决方案
什么情况下会使用到跨域? 一般情况是在自己的内部的工程中会出现跨域情况。 
有三种解决方案: (1)代理方案 前端页面访问本地的服务器,本地服务器访问其它域的资源,它是服务器端的跨域问题解决。 (2)jsonp JSONP(JSON with Padding)是JSON的一种“使用模式”,可用于解决主流浏览器的跨域数据访问的问题。由于同源策略,一般来说位于 server1.example.com 的网页无法与不是 server1.example.com的服务器沟通,而 HTML 的(script)标签 元素是一个例外。利用 (script)标签元素的这个开放策略,网页可以得到从其他来源动态产生的 JSON 资料,而这种使用模式就是所谓的 JSONP。用 JSONP 抓到的资料并不是 JSON,而是任意的JavaScript,用 JavaScript 直译器执行而不是用 JSON 解析器解析。 (3)XHR2全称XMLHttpRequest Level2它是HTML5提供的方法,一般是在移动开发中使用。
二,jQuery解决跨域操作
在jquery中我们可以使用$.ajax,$.getJSON,$.getScript来解跨域问题。
1,$.ajax解决跨域问题
 关于json与jsonp格式的区别 Json格式 :[value1,value],{name:value} Jsonp格式: callback(json)  注意:  使用该方式的缺点:请求方式只能是get请求
2,Jquery中如何使用jsonp完成跨域问题
 使用该方式的特点:与方式一相比,请求方式不只局限于get请求,还可以是post请求,但从服务器从获取的数据依然是jsonp格式
3,$.getJSON解决跨域问题
API:  例: 
总结:javaWeb开发过程中经常用到到的第二种解决方案(利用 (script)标签元素的这个开放策略) ( ̄y▽ ̄)╭ Ohohoho…
小编图像  小编ID:薇薇的憨宝
|