一 服务器端代码
package com.cn; import java.util.List;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping; @Controller
@RequestMapping("/data/inteface")
public class CSDNTest {
@RequestMapping("/getdata")
public void getSolrArticleen(String parameter,
HttpServletRequest request, HttpServletResponse response) throws Exception{
String callback = request.getParameter("jsoncallback");
parameter = new String(parameter.getBytes("iso-8859-1"), "utf-8");
//获取数据
DataRepository dataRepository = new DataRepository();
List<String> primaryItems = dataRepository.getData();
//把获取的数据转换成字符串,这里用的是FastJson,也可以根据需要用Gson
String jsonArticle = JSONObject.toJSONString(primaryItems,
SerializerFeature.DisableCircularReferenceDetect);
//把需要输出的服务器端的字符串拼接callback头
String json = callback+"(" + jsonArticle + ")";
//输出到客户端
GetOut.getWriter(json, response);
}
}
二 获取输出流的代码
package com.cn; import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.http.HttpServletResponse;
/**
*
* @Title: GetOut.java
*
* @Package: com.cn
*
* @Company: WiiMedia
*
* @Description: 获取输出流
*
* @author: SongJia
*
* @date: 2016-06-27 上午11:09:27
*
*/
public class GetOut {
public static PrintWriter getWriter(String msg,HttpServletResponse response) throws IOException{
response.setContentType("text/html;charset=utf-8");
PrintWriter out = null;
out = response.getWriter();
out.write(msg);
out.flush();
out.close();
return out;
}
}
三 客户端请求数据代码
<script type="text/javascript">
function AcquireData() {
$.ajax({
async:false,
url: "http://m.lecoonginfo.com/data/inteface/getdata, // 跨域URL
type: 'GET',
dataType: 'jsonp',
jsonp: 'jsoncallback', //默认callback
timeout: 5000,
success: function (json) {
//客户端jquery预先定义好的callback函数,
//成功获取跨域服务器上的json数据后,
//会动态执行这个callback函数
console.log(json);
}
}
});
</script>
JS跨域:2.解决方案之-设置回调参数的更多相关文章
-
js跨域请求解决方案
什么是跨域? 跨域是指一个域下的文档或脚本试图去请求另一个域下的资源,这里跨域是广义的. 广义的跨域: 1.) 资源跳转: A链接.重定向.表单提交 2.) 资源嵌入: <link>.&l ...
-
js跨域及解决方案
本文出自:http://www.cnblogs.com/oneword/archive/2012/12/03/2799443.html 1.什么是跨域 我们经常会在页面上使用ajax请求访问其他服务器 ...
-
angular.js跨域post解决方案
跨域,前端开发中经常遇到的问题,AngularJS实现跨域方式类似于Ajax,使用CORS机制. 下面阐述一下AngularJS中使用$http实现跨域请求数据. AngularJS XMLHttpR ...
-
js跨域问题解决方案
跨域:当协议.域名.端口号任何一个不相同时,叫称为跨域. HTML5 CORS(cross-origin-resource-sharing)跨域资源共享: 原理:当需要访问跨域的资源时,可以通 ...
-
js跨域问题解释 使用jsonp或jQuery的解决方案
js跨域及解决方案 1.什么是跨域 我们经常会在页面上使用ajax请求访问其他服务器的数据,此时,客户端会出现跨域问题. 跨域问题是由于javascript语言安全限制中的同源策略造成的. 简单来说, ...
-
Atitit.js跨域解决方案attilax大总结&#160;后台java&#160;php&#160;c#.net的CORS支持
Atitit.js跨域解决方案attilax大总结 后台java php c#.net的CORS支持 1. 设置 document.domain为一致 推荐1 2. Apache 反向代理 推荐1 ...
-
js跨域请求jsonp解决方案-最简单的小demo
这里说的js跨域是指通过js在不同的域之间进行数据传输或通信,比如用ajax向一个不同的域请求数据,或者通过js获取页面中不同域的框架中(iframe)的数据.只要协议.域名.端口有任何一个不同,都被 ...
-
chrome浏览器的跨域设置 Google Chrome浏览器下开启禁用缓存和js跨域限制--disable-web-security
chrome用户默认路径 Win7:C:\Users\[用户名]\AppData\Local\Google\Chrome\User Data\XP:C:\Documents and Settings\ ...
-
js跨域原理及解决方案
方法一:jsonp函数 在HTML DOM中,Script标签是可以跨域访问服务器上的数据的.因此,可以指定script的src属性为跨域的url,基于script标签实现跨域.script标签本身就 ...
随机推荐
-
黄聪:wordpress在IIS8中设置默认编码(windows2012服务器)
web.config中配置 <?xml version="1.0" encoding="UTF-8"?> <configuration> ...
-
Java [Leetcode 66]Plus One
题目描述: Given a non-negative number represented as an array of digits, plus one to the number. The dig ...
-
Jquery 实现瀑布流布局
//保证img文件夹下有图片//引入jquery <script src="Script/jquery-1.7.2.js"></script> <st ...
-
【转】eclipse插件:OpenExplorer快速打开文件目录
在MyEclipse开发中常用到其中一个"Open In Explorer"的小插件,可以直接进入Windows资源管理器中打开选中文件所在的目录,在使用eclipse开发时也很需 ...
-
css float 布局
.clearfix:after { content: ''; display: table; clear: both; } .clearfix {; }
-
IOS动态自适应标签实现
先上效果图 设计要求 1.标签的宽度是按内容自适应的 2.一行显示的标签个数是动态的,放得下就放,放不下就换行 3.默认选中第一个 4.至少选中一个标签 实现思路 首先我们从这个效果上来看,这个标签是 ...
-
gulp的使用(二)之gulpfile.js文件的配置
Gulpfile.js是什么文件: gulp是前端开发过程中对代码进行构建的工具,是自动化项目的构建利器:她不仅能对网站资源进行优化,而且在开发过程中很多重复的任务能够使用正确的工具自动完成:使用她, ...
-
9-Python3从入门到实战—基础之条件控制语句
Python从入门到实战系列--目录 条件判断 if 条件判断 if 语句语法 if <条件判断1>: <执行1> elif <条件判断2>: <执行2> ...
-
使用Java提供的MXBean来监控jvm创建了哪些线程
MBean是一种JavaBean,MBean往往代表的是JMX中的一种可以被管理的资源.MBean会通过接口定义,给出这些资源的一些特定操作: 属性的读和写操作 可以被执行的操作 关于自己的描述信息 ...
-
43. 根据某个字段查询的重复的记录,例:查testId重复的记录
select t.* from test t where t.testId in (select testIdfrom test group by testIdhaving count(test ...