JQuery+ajax+jsonp 跨域访问
Jsonp(JSON with Padding)是资料格式 json 的一种“使用模式”,可以让网页从别的网域获取资料。
关于Jsonp更详细的资料请参考http://baike.baidu.com/view/2131174.htm,下面给出例子:
一.客户端
- <!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 跨域访问相关推荐
- Jquery ajax jsonp跨域访问 返回格式及其获取方式 并实现单点登录SSO
后台代码 using System; using System.Collections.Generic; using System.Linq; using System.Web; using Syst ...
- jquery ajax 解决跨域访问问题
当使用jquery ajax进行跨域请求时,会出现Access-Control-Allow-Origin错误 //获取验证码 var send_status = true; $('#pull_code ...
- jsonp跨域访问服务
前段时间在做产品开发的时候,需要与公司网站那边进行交互,我们所开发的产品上线后是放在一个域名下,公司网站那块是在另一个域名下,这样在页面中调用 网站那边的接口时就存在跨域的问题,当时为了不修改网站那边 ...
- ajax 跨域请求数据,JQuery Ajax执行跨域请求数据的解决方案
JQuery Ajax执行跨域请求数据的解决方案 今天前端因为需要ajax调用两个不同的项目,请求域不一样,所以涉及ajax跨域的问题 ,其实很简单,具体如下 原来的ajax请求如下: $.ajax( ...
- jq中ajax请求跨域,jquery+ajax实现跨域请求的方法
本文实例讲述了jquery+ajax实现跨域请求的方法.分享给大家供大家参考.具体实现方法如下: 说明:这里的dataType 为 "jsonp" :type 只能为 GET ...
- vb跨域访问ajax,解决AJAX的跨域访问-两种有效示例
这篇文章主要为大家详细介绍了解决AJAX的跨域访问-两种有效示例,具有一定的参考价值,可以用来参考一下. 感兴趣的小伙伴,下面一起跟随512笔记的小玲来看看吧!新的W3C策略实现了HTTP跨域访问,还 ...
- Ajax之跨域访问与JSONP
前言 同源策略的限制,使得ajax无法发出跨域请求.在许多情况下,我们需要让ajax支持跨域.以下是其中一种解决方案(JSONP).JSONP解决了跨域数据访问的问题. 在html中,具有src属性的 ...
- [Ajax] 实现跨域访问
跨域访问是什么 同源策略 所谓"同源"指的是"三个相同":协议相同.域名相同以及端口相同. Cookie.LocalStorage和lndexDB无法读取 DO ...
- 介绍一个JSONP 跨域访问代理API-yahooapis
你是否遇到了想利用AJAX访问一些公网API,但是你又不想建立自己的代理服务,因为有时我根本就没打算涉及服务端任何代码,但是讨厌的浏览器的同源策略,阻止了我们的ajax调用. 比如我想访问一个天气的r ...
最新文章
- LeetCode简单题之环和杆
- Maven 无法下载 json-lib
- Java 集合 — HashMap
- MFC中的几个常用类——CWnd
- TensorFlow 教程——基本分类:对服装图像进行分类
- Maven 连接私服资源库配置
- Kafka消息处理与集群维护
- CSU-1982 小M的移动硬盘
- VUE:解决 [Vue warn]: Error in render: “TypeError: item.slice is not a function“ (取部分数据)
- linux历史性能数据,Linux平台下如何看OS历史的性能数据
- 20210819_Test
- 手机modem开发(20)---公平性测试
- Android高手进阶:Adapter深入理解与优化
- 利用openssl创建私有CA的步骤和过程
- Atitit 薪酬管理法 工作手册 员:薪酬管理办法 1.薪酬结构 所有员工的薪酬均由岗位工资、级别工资、校龄工资、特别津贴、绩效工资和季度奖金六部分组成。其中岗位工资、级别工资、校龄工资、22
- rt3070网卡 linux驱动,Linux下的WIFI驱动RT3070的编译移植
- android开发塔防游戏机,上手快又耐玩 五款Android平台塔防类游戏推荐
- 怎么用视频做gif动图?手把手教你制作gif表情包
- python爬虫cookie处理_Python爬虫(六)cookie相关的请求处理
- 优秀IT项目经理的基本要求
热门文章
- 如何顺利度过新人适应期
- 入门代码教程第一节 如何:定义服务协定
- React Native 集成
- sumif三个条件怎么填_Excel条件求和函数sumif详解及应用
- 大数据项目开发案例_大数据分析技术——项目案例2(房价数据分析上)
- Shellcode开发辅助工具shellnoob
- ajax百分比加载特效,jQuery实现的简单百分比进度条效果示例
- iPhone12 safeArea顶部区域尺寸变化
- python网页前端和react有什么区别_Vue与React两个框架的粗略区别对比
- d类功放芯片_【学术论文】应用于无滤波级D类音频功放的新型死区时间控制系统...