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 相关文章推荐
Web前端设计模式  制作漂亮的弹出层
Oct 29 Javascript
jquery 表格的增行删行实现思路
Mar 21 Javascript
js实现倒计时(距离结束还有)示例代码
Jul 24 Javascript
JavaScript按位运算符的应用简析
Feb 04 Javascript
微信小程序 教程之WXSS
Oct 18 Javascript
详解node如何让一个端口同时支持https与http
Jul 04 Javascript
VUE element-ui 写个复用Table组件的示例代码
Nov 18 Javascript
element-ui表格列金额显示两位小数的方法
Aug 24 Javascript
jQuery实现的网站banner图片无缝轮播效果完整实例
Jan 28 jQuery
JS字符串常用操作方法实例小结
Jun 24 Javascript
JavaScript工具库MyTools详解
Jan 01 Javascript
详解vue或uni-app的跨域问题解决方案
Feb 21 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
PHPMailer安装方法及简单实例
2008/11/25 PHP
Linux环境下搭建php开发环境的操作步骤
2013/06/17 PHP
php解析html类库simple_html_dom(详细介绍)
2013/07/05 PHP
php/js获取客户端mac地址的实现代码
2013/07/08 PHP
php smarty模板引擎的6个小技巧
2014/04/24 PHP
thinkphp5 URL和路由的功能详解与实例
2017/12/26 PHP
PHP实现多图上传和单图上传功能
2018/05/17 PHP
JQuery CSS样式控制 学习笔记
2009/07/23 Javascript
js window.onload 加载多个函数的方法
2009/11/02 Javascript
基于jquery的3d效果实现代码
2011/03/23 Javascript
jquery cookie实现的简单换肤功能适合小网站
2013/08/25 Javascript
jQuery获取选中内容及设置元素属性的方法
2014/07/09 Javascript
js获取表格的行数和列数的方法
2015/10/23 Javascript
JQuery实现简单的图片滑动切换特效
2015/11/22 Javascript
学习jQuey中的return false
2015/12/18 Javascript
BOM之navigator对象和用户代理检测
2017/02/10 Javascript
Angularjs 与 bower安装和使用详解
2017/05/11 Javascript
将jquery.qqFace.js表情转换成微信的字符码
2017/12/01 jQuery
opencv 识别微信登录验证滑动块位置
2018/08/07 Javascript
Vuex新手的理解与使用详解
2019/05/31 Javascript
[56:41]iG vs Winstrike 2018国际邀请赛小组赛BO2 第二场
2018/08/17 DOTA
Python中pip安装非PyPI官网第三方库的方法
2015/06/02 Python
解决python2.7 查询mysql时出现中文乱码
2016/10/09 Python
python 读取视频,处理后,实时计算帧数fps的方法
2018/07/10 Python
python实现停车管理系统
2018/11/30 Python
python 中的列表生成式、生成器表达式、模块导入
2019/06/19 Python
Python搭建代理IP池实现获取IP的方法
2019/10/27 Python
django有外键关系的两张表如何相互查找
2020/02/10 Python
django在保存图像的同时压缩图像示例代码详解
2020/02/11 Python
python 利用百度API识别图片文字(多线程版)
2020/12/14 Python
基于 HTML5 Canvas实现 的交互式地铁线路图
2018/03/05 HTML / CSS
英语专业学生的自我评价
2013/12/30 职场文书
农村婚礼主持词
2014/03/13 职场文书
单位计划生育责任书
2015/05/09 职场文书
2019最新版试用期劳动合同模板!
2019/07/04 职场文书
sql server偶发出现死锁的解决方法
2022/04/10 SQL Server