1 //*表示支持所有网站访问,也可以额外配置相应网站
2 resp.setHeader("Access-Control-Allow-Origin", "*");
首先我们要修改 index.jsp 页面的 ajax 请求:
1 $.ajax({
2 type:"get",
3 async:false,
4 url:"http://localhost:8080/JavaWeb01/getPassWordByUserNameServlet?userName=Tom",
5 dataType:"jsonp",//数据类型为jsonp
6 jsonp:"backFunction",//服务端用于接收callBack调用的function名的参数
7 success:function (data) {
8 alert(data["passWord"]);
9 },
10 error:function () {
11 alert("error");
12 }
13
14 });
注意:我们修改了 dataType 的数据类型为 jsonp,并且新增了 jsop 属性值为 “backFunction”。
JSONP优缺点:
1.优点
(1)不像XMLHttpRequest对象实现Ajax请求那样受到同源策略限制,JSONP可以跨越同源策略
(2)在浏览器中兼容性好
(3)在请求完毕后可以哦你给过调用callback方式回传结果,将controller和view分开,jsonp服务只提供纯服务的数据,页面渲染由自己定义
2.缺点
(1)只支持get请求不支持post请求
(2)只支持跨域HTTP请求这种情况,不能解决不同域的两个页面之间javascript调用问题
(3)调用失败的时候不会返回各种HTTP状态码
(4)安全性低,如果提供JSONP服务的一方有漏洞,他返回的javascript内容容易被人控制
2.常见Http请求头
http消息头,在超文本传输协议( Hypertext Transfer Protocol ,HTTP)的请求和响应消息中,协议头部分的组件,http消息头用来准确描述正在获取的资源,服务器或者客户端行为,定义了http事务中的具体操作参数。
请求头:
原文:https://www.cnblogs.com/menghan94/p/11182745.html