JSONP 跨域访问代理API-yahooapis实现代码


Posted in Javascript onDecember 02, 2012

你是否遇到了想利用AJAX访问一些公网API,但是你又不想建立自己的代理服务,因为有时我根本就没打算涉及服务端任何代码,但是讨厌的浏览器的同源策略,阻止了我们的ajax调用。
比如我想访问一个天气的restfull api,如果我直接去GET:

$.get("http://m.weather.com.cn/data/101010100.html");

JSONP 跨域访问代理API-yahooapis实现代码 
看见这问题相信大家都不会陌生,也会很自然的得到解决方案,但是我这里真的不想touch任何服务端代码,用jsonp吧,但是服务端没实现契约。
在这里我是时候引入主角yahoo提供的jsonp代理:http://query.yahooapis.com/v1/public/yql
实现跨域访问代码为:http://jsfiddle.net/whitewolf/4UDpf/9/
html:
<script type="text/javascript" src="http://ajax.cdnjs.com/ajax/libs/json2/20110223/json2.js"></script> 
<div id="content"> 
</div>

js: 
$(function(){ 
$.getJSON("http://query.yahooapis.com/v1/public/yql", { 
q: "select * from json where url=\"http://m.weather.com.cn/data/101010100.html\"", 
format: "json" 
}, function(data) { 
var $content = $("#content") 
if (data.query.results) { 
$content.text(JSON.stringify(data.query.results)); 
} else { 
$content.text('no such code: ' + code); 
} 
});

});
效果:
JSONP 跨域访问代理API-yahooapis实现代码 
多的就不用说了,jsonp原理我相信大家也很清楚。
Javascript 相关文章推荐
优化javascript的执行速度
Jan 23 Javascript
关于文本框的一些限制控制总结~~
Apr 15 Javascript
jqGrid日期格式的判断示例代码(开始日期与结束日期)
Nov 08 Javascript
js获取对象为null的解决方法
Nov 21 Javascript
jquery根据锚点offset值实现动画切换
Sep 11 Javascript
javascript自定义in_array()函数实现方法
Aug 03 Javascript
AngularJS中的Directive实现延迟加载
Jan 25 Javascript
js微信支付实现代码
Dec 22 Javascript
Jquery树插件zTree实现菜单树
Jan 24 Javascript
Django与Vue语法的冲突问题完美解决方法
Dec 14 Javascript
详解js类型判断
May 22 Javascript
webpack4之如何编写loader的方法步骤
Jun 06 Javascript
script标签属性type与language使用选择
Dec 02 #Javascript
JavaScript中valueOf函数与toString方法深入理解
Dec 02 #Javascript
json对象转字符串如何实现
Dec 02 #Javascript
javascript 构造函数强制调用经验总结
Dec 02 #Javascript
js精度溢出解决方案
Dec 02 #Javascript
JavaScript词法作用域与调用对象深入理解
Nov 29 #Javascript
浏览器加载、渲染和解析过程黑箱简析
Nov 29 #Javascript
You might like
PHP 函数语法介绍一
2009/06/14 PHP
PHP页面间参数传递的四种方法详解
2013/06/09 PHP
PHP中常用的输出函数总结
2014/09/22 PHP
PHP的Laravel框架中使用消息队列queue及异步队列的方法
2016/03/21 PHP
Yii2 如何在modules中添加验证码的方法
2017/06/19 PHP
PHP实现求两个字符串最长公共子串的方法示例
2017/11/17 PHP
如何在PHP中读写文件
2020/09/07 PHP
javascript学习笔记(十一) 正则表达式介绍
2012/06/20 Javascript
javascript检测页面是否缩放的小例子
2013/05/16 Javascript
JavaScript设计模式之策略模式实例
2014/10/10 Javascript
基于BootStrap Metronic开发框架经验小结【三】下拉列表Select2插件的使用
2016/05/12 Javascript
AngularJS控制器之间的通信方式详解
2016/11/03 Javascript
AngularJS中一般函数参数传递用法分析
2016/11/22 Javascript
three.js快速入门【推荐】
2017/01/21 Javascript
JavaScript数据结构之链表的实现
2017/03/19 Javascript
JavaScript 数组的进化与性能分析
2017/09/18 Javascript
Angular通过指令动态添加组件问题
2018/07/09 Javascript
Win7上搭建Cocos2d-x 3.1.1开发环境
2014/07/03 Python
python基于pyDes库实现des加密的方法
2017/04/29 Python
python学习基础之循环import及import过程
2018/04/22 Python
Python global全局变量函数详解
2018/09/18 Python
在Python中调用Ping命令,批量IP的方法
2019/01/26 Python
python带参数打包exe及调用方式
2019/12/21 Python
python使用gdal对shp读取,新建和更新的实例
2020/03/10 Python
深入理解css属性的选择对动画性能的影响
2016/04/20 HTML / CSS
英国排名第一的最新设计师品牌手表独立零售商:TIC Watches
2016/09/24 全球购物
Cult Gaia官网:美国生活方式品牌
2019/08/16 全球购物
Shopping happy life西班牙:以最优惠的价格提供最好的时尚配饰
2020/03/13 全球购物
俄语专业毕业生推荐信
2013/10/28 职场文书
行政总经理岗位职责
2013/12/05 职场文书
学校安全防火方案
2014/06/07 职场文书
查摆问题自我剖析材料
2014/08/18 职场文书
创先争优个人承诺书
2014/08/30 职场文书
2016年“六一儿童节”校园广播稿
2015/12/17 职场文书
mysql主从复制的实现步骤
2021/10/24 MySQL
JavaScript中isPrototypeOf函数
2021/11/07 Javascript