jquery post方式是不支持跨域访问的 一般方法使用get 和jsonp 进行跨域访问
$.ajax({
async:false,
url: http://跨域的dns/document!searchJSONResult.action,
type: "GET",
dataType: 'jsonp',
jsonp: 'jsoncallback',
data: qsData,
timeout: 5000,
success: function (json) {}
})
jquery get方式提交是允许跨域的 我测试的方法为post提交 但有缺陷 必须服务端可以控制 服务端的返回结果也是自己写加上红色标记代码才可以 存在风险 任何ip都可以访问到这个方法 网上查询到 该 * 号 可以指定访问的网址 我使用带端口号的地址测试不通过 有人说是域名地址可以即 “
getResponse().addHeader("Access-Control-Allow-Origin", "www.baidu.com")<span style="font-size:18px;"><strong>”</strong></span> 但我没有尝试 所以这只是一种
暂时的解决方案 如下
测试环境是两个不同端口下的tomcat项目互相访问
页面ajax请求:
当前项目端口8080
普通ajax请求
接口方法(8098):
只需添加红色代码就可收到返回结果
扫描二维码关注公众号,回复:
8660759 查看本文章
<span style="font-size:18px;">getResponse().addHeader("Access-Control-Allow-Origin", "*");</span>