- 浏览: 112838 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
墨子宇:
so,为了使用JSLint我还得装一个aptana?
eclipse 添加 JSLint 插件 -
lvjun106:
楼主可以看下这篇文章,介绍的很详细。http://www.os ...
eclipse 添加 JSLint 插件 -
newsletterBroker:
呵呵,感觉不错!
Jquery 源码中的 正则表达式 分析 -
jayliud:
String.prototype.count = funct ...
百度web前端笔试
原文地址:http://www.aliued.cn/?p=2728#more-2728
Neo是一个小公司的Web工程师,老板Morpheus需要Neo开发一个Web程序,这个程序要求:
1.用户能够根据关键词获取Flickr上的图片信息,如搜索瀑布(waterfall)就能获得与瀑布有关的图片;
2.如果图片有地理标识,根据地理标识,获取这个地方的相关信息;
3.顺便向用户显示当地最近的天气情况,说不定用户想去旅游哦。
Neo开始工作,首先查看和学习Flickr的API ,又针对Flickr的API编写了一套程序获取数据,再对返回数据进行处理以得到满意的格式,终于,Neo可以把图片展示到网页上了; 紧接着,为了能够根据图片地理标识获取图片拍摄地的信息,Neo又开始寻找地图服务的API并且学习使用,针对地图API再一次编写地图数据查询程序,处 理返回数据的格式,然后展示到页面上;最后,要想获得当地的天气情况,Neo还必须熟悉某个天气信息提供商的API,继续编写天气数据查询程序,处理返回 数据的格式,在页面上展示给用户。Neo意识到为了开发这个鬼东西,自己反反复复学了3套API,如果需求变更,还可能有更多API加进来,最可怕的是, 以后Neo得长期维护这么多个API,想想真是噩梦!
设想我是Neo,我会试试YQL ,让它帮我把工作变得轻松快乐些。也许你并不了解YQL,没关系,那我们就来认识一下吧。
YQL (Yahoo! Query Language)是一种支持对互联网上的数据进行查询、过滤、连接、类似SQL语法的简单语言。用YQL官方的话:有了YQL,开发人员只需要使用一种 简单的查询语言即可访问和操控互联网上丰富的数据,而不再需要反复学习使用各种各样的API。YQL为我们提供丰富、实时的方法来操控互联网上任意可访问 的API,同时向开发者提供了一个可视化的Web控制台 ,使我们在使用和调试YQL的过程中更加高效便捷。
YQL就像一个超大的数据库,从理论上,这个数据库可以包含整个互联网上的信息。无论您是要基于各种API操作数据,还是从feed源(如RSS, XML,ATOM)获取数据,甚至是从指定的HTML页面上抓取结果,您所需要的就是使用YQL这种类似SQL的简单查询语言:
SELECT something FROM table_name WHERE some_field=some_value
。
YQL能够以规范的格式(XML/JSON)将结果返回给你。这听起来确实很酷,那我们就来看看通过YQL怎么获得与waterfall有关的Flickr图片数据吧:猛击此处 。当我们执行YQL语句后,控制台会打印出我们想要格式的数据,并且生成一个REST 查询链接,有了它,我们就可以用我们熟悉的编程语言开始玩转数据了。对于前端开发人员,我们只需要在控制台选择返回数据格式为JSON,并且提供一个回调函数,这时生成的url就是一个现成的JSONP url地址,如:
<script>
function
loveData
(
r
){
var
results
=
r
.
query
.
results
;
alert
(
results
);
}
</script>
<script
type=
"text/javascript"
src=
"http://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20flickr.photos.search%20where%20text%3D%22waterfall%22%20limit%2010&format=json&callback=loveData"
></script>
在使用YQL的过程中,选用合适的JavaScript库加以辅助,如YUI,jQuery(准确来说YUI是一个框架),那么开发将会变得更加方便。就在9月7日
发布的YUI 3.2.0
已引入了YQL查询组件。如要通过YUI来调用YQL, 最简单的方法就是向页面中引入YUI3.2.0的seed文件:
然后加载YQL模块,你就可以使用YQL语句直接查询数据了:
YUI
().
use
(
'yql'
,
function
(
Y
)
{
Y
.
YQL
(
'select * from weather.forecast where location=90210'
,
function
(
r
)
{
var
results
=
r
.
query
.
results
//results就是你所关心的数据
//现在你可以用它做任何事情
});
});
YQL将Yahoo!的服务封装成YQL数据表,使得我们轻松地就能够获得这些丰富资源。更重要的是,YQL不只是让我们被动地使用现有的表数据,而是提供了一个开放数据建表平台(Open Data Tables ),我们可以基于YQL的规范构造自己的表数据。在此平台上,您可以使用标准的XML语法和服务器端JavaScript将API或各种数据源封装成自己需要的格式,这样,您就创建了一张属于自己的数据表。当然,由于YQL的表数据是托管在GitHub 上的,你还可以通过GitHub 向YQL项目组推送你的数据表,一旦被接受,那么其他开发人员将会享受到您为他们带去的便利,也因你的贡献,YQL的数据源会更加丰富,也更加强大。
前Yahoo!社交平台副总裁Neal Sample表示 :Yahoo! 正在尽可能的将所提供的服务都转移到YQL上。由于YQL的稳定、扩展性高及易用,对于开发人员来说具有长远利益。通过提供类似SQL的语法,YQL消除 了开发人员学习大量API的麻烦。他们坚信YQL是使用互联网服务的最佳方式,所以Yahoo!对YQL提供长期支持是毫无疑问的,大家可以放心使用。
发表评论
-
execCommand
2011-11-25 16:12 1125mozilla 文档地址:https://develop ... -
javascript DOM
2011-11-21 10:50 1044原文地址: http://blog.mo ... -
支持ctrl,shift键的拖拽排序
2011-08-26 11:23 1177终于搞定了,太不容易了。最近公司要弄一个拖拽排序的 ... -
javascript 封装 继承
2011-08-16 17:37 1136原文地址:http://www.ruanyifeng.com/ ... -
javascript 中的闭包
2011-08-16 16:37 922文章地址:http://www.ruanyifeng.com/ ... -
javascript 排序
2011-08-31 19:41 916//生成20-100之间的20个随 ... -
seajs 源码 学习 1
2011-08-10 17:32 0global.seajs = { _seajs: this ... -
seajs 源代码 学习
2011-08-11 14:08 3203这段时间学习了一下seajs,也用了seajs写了不少的d ... -
null 和 undefined
2011-07-31 15:05 882原文地址:http://blog.csdn.net/aimin ... -
辩:javascript 的数据类型
2011-07-29 11:18 1176关于“javascript 的数据 ... -
跨域请求
2011-07-12 11:34 0原文地址:http://itgeeker. ... -
uglifyJS
2011-04-26 12:21 0-b or --beautify — o ... -
JavaScript DO 框架 学习
2011-04-22 14:56 1831昨天在github找东西的时候,发现上了克军的DO框架,感觉不 ... -
prettfy demo
2011-02-23 08:29 1247<!DOCTYPE html PUBLIC " ... -
JavaScript 测试题
2011-02-16 12:07 1068console.log(" ... -
javascript 中的apply和call方法
2010-12-31 15:11 791一直以来不明白,今天算是搞明白了apply和call方法了。记 ... -
jquery 插件 开发 模板
2010-12-10 13:09 950原文来自网上。 (function($) { ... -
31个最实用的Javascript工具
2010-12-08 14:56 1079原文地址:http://developer.51cto.com ... -
27个必备的Javascript开发工具
2010-12-01 14:59 1078原文地址:http://blog.mcncc.com/4275 ... -
选择器 效率 图
2010-11-22 11:27 735以后用jquery的选择器这回有依据了
相关推荐
总的来说,"yql-rss-speed-comparison"项目提供了一个很好的学习平台,帮助开发者了解和掌握如何高效地使用YQL来处理RSS数据,同时也提醒我们在追求性能时应考虑各种因素并进行适当的基准测试。通过深入研究这个开源...
YQL,全称为Yahoo Query Language,是由雅虎提供的一个强大工具,允许开发者以SQL语法查询网络上的各种数据源,包括XML、JSON等格式。YQL的一个重要特性是可以绕过浏览器的同源策略,因此可以用来进行跨域请求。通过...
首先,YQL是一种强大的工具,允许开发者通过SQL-like语法查询和组合来自不同网络源的数据。对于股票数据,我们可以使用YQL的内置表`yahoo.finance.quotes`来获取包括股票价格、市盈率、市值等在内的多种信息。例如,...
首先,雅虎的YQL是一种强大的工具,允许开发者通过类似于SQL的语言来查询、筛选和组合来自多个在线数据源的信息。它支持多种数据格式,如HTML、XML、RSS和Atom,以及Yahoo!自身的Web服务。开发者可以在Yahoo的YQL...
\n\n**YQL(Yahoo Query Language)**\nYQL是一种强大的数据查询语言,允许开发者通过简单的SQL-like语法来访问和组合来自不同网络源的数据。在这个项目中,YQL被用来从Yahoo Weather API获取特定地点的天气信息。...
1. **Yahoo YQL API**:Yahoo YQL(Yahoo Query Language)是一种强大的查询语言,允许开发者通过简单的SQL语法来访问和操作网络上的数据。在这个项目中,YQL API被用来获取最新的货币汇率信息,以便进行货币转换...
总之,Go-golang中的这种规则引擎查询语言提供了一种强大的工具,它借鉴了SQL的`WHERE`子句概念,使得业务逻辑的编写更加直观,同时也保持了与Go语言的兼容性和效率。在开发过程中,理解并熟练掌握这种规则引擎将极...
YQL是一个强大的工具,它允许开发者通过简单的SQL-like语法查询各种网络资源,包括JSON、XML和其他数据格式。通过YQL,FeedEk可以跨域获取数据,这在处理跨域资源共享(CORS)问题时非常有用。 使用FeedEk插件的...
YQL 是 Yahoo 提供的一种强大的查询语言,它允许开发者通过简单的 SQL-like 语法来访问和操作网络上的数据。在“the_newsroom”项目中,YQL 可能被用于获取新闻源数据。开发者可以利用 YQL 的 API 来查询各种在线...
在查询处理方面,Vespa提供了一种强大的查询语言YQL(Yahoo Query Language),让用户可以编写复杂的查询表达式,进行高级的查询操作,如布尔逻辑、过滤、排序、分页等。同时,Vespa还支持基于机器学习的排名功能,...
2. **数据集成**:支持AJAX、JSONP和YQL进行数据绑定,利用localStorage进行离线数据保存。 3. **Animator**:一个桌面应用程序,用于为WebKit浏览器和触摸屏移动设备创建CSS3动画,以实现丰富的设备体验。 **开发...
总结,fofa API是一个强大的工具,通过理解其功能、学习查询语法,并结合fofa-master中的SDK与示例,开发者可以高效地获取和分析网络资产信息,为网络安全研究提供有力支持。正确、合规地使用fofa API,能够极大地...
它展示了如何通过客户端技术直接与第三方API交互,实现无服务器的轻量级应用,对于学习JavaScript和YQL的开发者来说,这是一个很好的实践案例。同时,这也启示我们,即使是简单的应用,也可以通过巧妙的技术组合,为...
YQL是一种强大的查询语言,允许开发者以SQL-like的方式访问和组合各种网络数据源。在"MemeThis-开源"中,simpleyql库被用来方便地从用户当前的网页提取数据,并将其提交到Yahoo!平台,实现了内容的快速发布。 其次...
C++是一种强大的面向对象的编程语言,它允许程序员创建高效且可扩展的软件。在本项目中,我们将使用C++来设计和实现我们的算法交易系统。熟悉基本语法、类和对象的概念是至关重要的。 **2. Yahoo Finance API** ...
数据集成是Sencha Touch 的一大亮点,它支持数据模型(Models)、数据存储(Stores)和数据代理(Proxies),可以轻松处理本地和服务器数据,支持JSON/P、XML和YQL等数据格式。此外,它还提供了关联、验证等功能,...
此外,它还集成了强大的数据管理功能,支持通过Ajax、JSONP、YQL等方式绑定数据到组件模板,并可以将数据写入本地存储,实现离线应用功能。 开发Sencha Touch应用前,你需要准备最新版本的Sencha Touch SDK,并将其...
四是强大的数据集成能力,支持Ajax、JSONp、YQL等方式进行数据绑定和本地存储,使得数据管理更为便捷;最后,其丰富的可重用组件简化了开发过程,提高了开发效率。 综上所述,iPhone应用开发涉及的技术层面广泛,从...
它提供了一个强大的数据包,支持通过Ajax、JSONp和YQL等技术将数据绑定到组件模板,甚至可以将数据写入本地离线存储。这意味着即使在网络不稳定或无网络的情况下,用户也能继续访问应用的部分内容。 在应用架构上,...
YQL 是 Yahoo 提供的一种强大的查询语言,可以用于获取网络上的各种数据,包括股票市场信息。在iStockTracking中,通过YQL,程序能够方便地抓取到Yahoo Finance上的股票历史数据和实时报价,为算法交易提供准确的...