浅谈JQuery+ajax+jsonp 跨域访问


Posted in Javascript onJune 25, 2016

Jsonp(JSON with Padding)是资料格式 json 的一种“使用模式”,可以让网页从别的网域获取资料。

一. 客户端

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 
<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
<title>Insert title here</title> 
<script type="text/javascript" src="resource/js/jquery-1.7.2.js"></script> 
</head> 
<script type="text/javascript"> 
$(function(){   
  /* 
  //简写形式,效果相同 
  $.getJSON("http://app.example.com/base/json.do?sid=1494&busiId=101&jsonpCallback=?", 
      function(data){ 
        $("#showcontent").text("Result:"+data.result) 
  }); 
  */ 
  $.ajax({ 
    type : "get", 
    async:false, 
    url : "http://app.example.com/base/json.do?sid=1494&busiId=101", 
    dataType : "jsonp",//数据类型为jsonp 
    jsonp: "jsonpCallback",//服务端用于接收callback调用的function名的参数 
    success : function(data){ 
      $("#showcontent").text("Result:"+data.result) 
    }, 
    error:function(){ 
      alert('fail'); 
    } 
  });  
}); 
</script> 
<body> 
<div id="showcontent">Result:</div> 
</body> 
</html>

二. 服务器端

import java.io.IOException; 
import java.io.PrintWriter; 
import java.util.HashMap; 
import java.util.Map; 
import javax.servlet.http.HttpServletRequest; 
import javax.servlet.http.HttpServletResponse; 
import net.sf.json.JSONObject; 
import org.springframework.stereotype.Controller; 
import org.springframework.web.bind.annotation.RequestMapping; 
 
@Controller 
public class ExchangeJsonController { 
  @RequestMapping("/base/json.do") 
  public void exchangeJson(HttpServletRequest request,HttpServletResponse response) { 
    try { 
    response.setContentType("text/plain"); 
    response.setHeader("Pragma", "No-cache"); 
    response.setHeader("Cache-Control", "no-cache"); 
    response.setDateHeader("Expires", 0); 
    Map<String,String> map = new HashMap<String,String>();  
    map.put("result", "content"); 
    PrintWriter out = response.getWriter();    
    JSONObject resultJSON = JSONObject.fromObject(map); //根据需要拼装json 
    String jsonpCallback = request.getParameter("jsonpCallback");//客户端请求参数 
    out.println(jsonpCallback+"("+resultJSON.toString(1,1)+")");//返回jsonp格式数据 
    out.flush(); 
    out.close(); 
   } catch (IOException e) { 
    e.printStackTrace(); 
   } 
  } 
}

以上就是小编为大家带来的浅谈JQuery+ajax+jsonp 跨域访问全部内容了,希望大家多多支持三水点靠木~

Javascript 相关文章推荐
JavaScript开发规范要求(规范化代码)
Aug 16 Javascript
基于jquery的网页SELECT下拉框美化代码
Oct 28 Javascript
jquery创建并行对象或者合并对象的实现代码
Oct 10 Javascript
Javascript浮点数乘积运算出现多位小数的解决方法
Feb 17 Javascript
jquery中append()与appendto()用法分析
Nov 14 Javascript
举例讲解JavaScript substring()的使用方法
Nov 09 Javascript
jQuery搜索框效果实现代码(百度关键词联想)
Feb 25 Javascript
Bootstrap Tree View简单而优雅的树结构组件实例解析
Jun 15 Javascript
小程序的上传文件接口的注意要点解析
Sep 17 Javascript
JS实现简易留言板特效
Dec 23 Javascript
javascript中contains是否包含功能实现代码(扩展字符、数组、dom)
Apr 07 Javascript
我所理解的JavaScript中的this指向
Sep 04 Javascript
javascript 广告移动特效的实现代码
Jun 25 #Javascript
jQuery+CSS3文字跑马灯特效的简单实现
Jun 25 #Javascript
解析JavaScript中的字符串类型与字符编码支持
Jun 24 #Javascript
JavaScript程序中实现继承特性的方式总结
Jun 24 #Javascript
JavaScript编程中实现对象封装特性的实例讲解
Jun 24 #Javascript
JS全局变量和局部变量最新解析
Jun 24 #Javascript
jQuery插件passwordStrength密码强度指标详解
Jun 24 #Javascript
You might like
DC的38部超级英雄动画电影
2020/03/03 欧美动漫
php数组函数序列之sort() 对数组的元素值进行升序排序
2011/11/02 PHP
PHP中$_FILES的使用方法及注意事项说明
2014/02/14 PHP
PHP获取中国时间(上海时区时间)及美国时间的方法
2017/02/23 PHP
用js实现键盘方向键翻页功能的代码
2007/06/03 Javascript
excel操作之Add Data to a Spreadsheet Cell
2007/06/12 Javascript
XML的代替者----JSON
2007/07/21 Javascript
JavaScript 提升运行速度之循环篇 译文
2009/08/15 Javascript
使用IE6看老赵的博客 jQuery初探
2010/01/17 Javascript
杨氏矩阵查找的JS代码
2013/03/21 Javascript
JavaScript版TAB选项卡效果实例
2013/08/16 Javascript
js关于命名空间的函数实例
2015/02/05 Javascript
简介JavaScript中fixed()方法的使用
2015/06/08 Javascript
jquery validate表单验证插件
2016/09/06 Javascript
canvas实现图像布局填充功能
2017/02/06 Javascript
使用vue-router完成简单导航功能【推荐】
2018/06/28 Javascript
微信h5静默和非静默授权获取用户openId的方法和步骤
2020/06/08 Javascript
python 二分查找和快速排序实例详解
2017/10/13 Python
深入浅析python with语句简介
2018/04/11 Python
解决DataFrame排序sort的问题
2018/06/07 Python
python sklearn库实现简单逻辑回归的实例代码
2019/07/01 Python
python opencv 简单阈值算法的实现
2019/08/04 Python
Python包和模块的分发详细介绍
2020/06/19 Python
墨西哥皇宫度假村预订:Palace Resorts
2018/06/16 全球购物
澳大利亚在线家具店:Luxo Living
2019/03/24 全球购物
土木工程专业个人求职信
2013/12/05 职场文书
《雨霖铃》教学反思
2014/02/22 职场文书
致百米运动员广播稿5篇
2014/10/13 职场文书
2016关于学习党章的心得体会
2016/01/15 职场文书
儿童诗两首教学反思
2016/02/23 职场文书
企业内部管理控制:银行存款控制制度范本
2020/01/10 职场文书
纯html+css实现打字效果
2021/08/02 HTML / CSS
Python 数据可视化工具 Pyecharts 安装及应用
2022/04/20 Python
Nginx开源可视化配置工具NginxConfig使用教程
2022/06/21 Servers
微前端qiankun改造日渐庞大的项目教程
2022/06/21 Javascript
windows server 2016 域环境搭建的方法步骤(图文)
2022/06/25 Servers