方法一(jsonp):

页面ajax请求的写法:

$.ajax({

type : "get",

async : false,

cache : false,

url : "http://localhost:8081/a/b",

data : {

produ_id: 111,

sub_id: 0,

produ_quantity: 1,

produ_price: 0.0

},

dataType : "jsonp",

jsonp: "jsonpCallback",

success : function(data) {

var d = data;

alert(d);

},

error : function() {

alert('fail');

}

});

java服务端写法:

public void ajaxRequest(Params params) {

HttpServletRequest request = ;

HttpServletResponse response = ;

response.setContentType("text/plain");

response.setHeader("Pragma", "No-cache");

response.setHeader("Cache-Control", "no-cache");

response.setDateHeader("Expires", 0);

response.setCharacterEncoding("UTF-8");

Map map = new HashMap();

map.put("result", "content");

PrintWriter out = null;

try {

out = response.getWriter();

String jsonString = JSONObject.toJSONString(map);//随便使用哪个JSONObject都可以,这里只是转为json格式的字符串就行

String jsonpCallback = request.getParameter("jsonpCallback");// 客户端请求参数

out.println(jsonpCallback + "(" + jsonString + ")");// 返回jsonp格式数据

} catch (IOException e) {

e.printStackTrace();

} finally{

out.flush();

out.close();

}

}

方法二:

在服务端设置response.setHeader("Access-Control-Allow-Origin", "*");即可。

Access-Control-Allow-Origin:* 表示允许任何域名跨域访问

如果需要指定某域名才允许跨域访问,只需把Access-Control-Allow-Origin:*改为Access-Control-Allow-Origin:允许的域名

例如:response.setHeader("Access-Control-Allow-Origin", "http://www.client.com");

AJAX 跨域请求 - JSONP获取JSON数据

Asynchronous JavaScript and XML (Ajax ) 是驱动新一代 Web 站点(流行术语为 Web 2.0 站点)的关键技术.Ajax 允许在不干扰 Web 应用程序的显示 ...

AJAX 跨域请求的解决办法:使用 JSONP获取JSON数据

由于受到浏览器的限制,ajax不允许跨域通信.如果尝试从不同的域请求数据,会出现安全错误.如果能控制数据驻留的远程服务器并且每个请求都前往同一域,就可以避免这些安全错误.但是,如果仅停留在自己的服务器 ...

【转】AJAX 跨域请求 - JSONP获取JSON数据

来源:http://justcoding.iteye.com/blog/1366102/ Asynchronous JavaScript and XML (Ajax ) 是驱动新一代 Web 站点(流 ...

第113天:Ajax跨域请求解决方法

一.原生JS实现ajax 第一步获得XMLHttpRequest对象 第二步:设置状态监听函数 第三步:open一个连接,true是异步请求 第四部:send一个请求,可以发送一个对象和字符串,不需要 ...

JQ之$.ajax()方法以及ajax跨域请求

AJAX(Asynchronous javascript AND xml :异步javascript和xml):是一种创建交互式网页应用的网页开发技术.AJAX可以在不重新加载整个页面的情况下与服务器 ...

解决ajax跨域请求 (总结)

ajax跨域请求,目前已用几种方法实现:   1)用原生js的xhr对象实现.                var url="http://freegeoip.net/json/&quot ...

ASP.NET MVC 实现AJAX跨域请求方法《1》

ASP.NET MVC 实现AJAX跨域请求的两种方法 通常发送AJAX请求都是在本域内完成的,也就是向本域内的某个URL发送请求,完成部分页面的刷新.但有的时候需要向其它域发送AJAX请求,完成数据 ...

JQuery的Ajax跨域请求原理概述及实例

今天在项目中需要做远程数据加载并渲染页面,直到开发阶段才意识到ajax跨域请求的问题,隐约记得Jquery有提过一个ajax跨域请求的解决方式,于是即刻翻出Jquery的API出来研究,发 JQuer ...

[转载]JQuery的Ajax跨域请求的解决方案

今天在项目中需要做远程数据加载并渲染页面,直到开发阶段才意识到ajax跨域请求的问题,隐约记得Jquery有提过一个ajax跨域请求的解决方式,于是即刻翻出Jquery的API出来研究,发现JQuer ...

随机推荐

关于CSS3的小知识点之2D变换

transition过渡 transition-duration:; 运动时间 transition-delay:; 延迟时间 transition-timing-function:; 运动形 ...

IOS UITableView移除底部空白行

tableView.tableFooterView = [[UIView alloc] initWithFrame:CGRectZero];

BZOJ3807 : Neerc2011 Lanes

左右与右左是两个独立的问题 设f[i]表示i时刻左右车道减少一条的答案 g[i]表示i时刻右左车道增加一条的答案 ans=min(f[i]+g[i+r]) 计算f[i]: 首先暴力计算出f[m+1], ...

Nginx+Tomcat的服务器端环境配置详解

这篇文章主要介绍了Nginx+Tomcat的服务器端环境配置详解,包括Nginx与Tomcat的监控开启方法,需要的朋友可以参考下 Nginx+tomcat是目前主流的Javaweb架构,如何让ngi ...

SURF特征

了解了SIFT特征后,来学习SURF特征. 虽说是SIFT的一个变种,可是跟SIFT还是有差别的 差别有例如以下: 1.尺度空间的构建(近似)不同. 2.同意尺度空间多层图像同一时候被处理 3.特征点 ...

css3的学习

已经学习css3一个月了,通过对css3的深入学习,我对网页设计的理解就更深刻了,以前只会用简单的图片,定位等来制作网页,现在可以运用css3扩展的新内容来写出更好看的网页. css3扩展内容中,我认 ...

webuploader 实现图片批量上传

1.导入资源 2.JSP代码

&lt ...

第4周小组作业:WordCount优化

Github项目地址:https://github.com/chaseMengdi/wcPro stage1:代码编写+单元测试 PSP表格 PSP2.1 PSP阶段 预估耗时(分钟) 实际耗时(分 ...

Trace 2018徐州icpc网络赛 (二分)(树状数组)

Trace There's a beach in the first quadrant. And from time to time, there are sea waves. A wave ( xx ...

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐