WEB开发网
开发学院网页设计JavaScript 使用 JSONP 实现跨域通信,第 2 部分: 使用 JSONP... 阅读

使用 JSONP 实现跨域通信,第 2 部分: 使用 JSONP、jQuery 和 Yahoo! 查询语言构建 mashup

 2010-03-09 00:00:00 来源:WEB开发网   
核心提示: YQL 可理解和支持的数据源包括:RSS、Atom、JSON、XML、CSV、HTML、Flickr、Yahoo! Finance、Weather 等,由于 YQL 也支持外部数据源(Yahoo! 以外的数据源),使用 JSONP 实现跨域通信,第 2 部分: 使用 JSONP、jQuery 和

YQL 可理解和支持的数据源包括:RSS、Atom、JSON、XML、CSV、HTML、Flickr、Yahoo! Finance、Weather 等。由于 YQL 也支持外部数据源(Yahoo! 以外的数据源),因而就有了构建 mashup 应用程序的无限种可能性。可以说,它在单独一个界面内将 Web 与您的应用程序相连。

图 1. YQL 作为仲裁服务
使用 JSONP 实现跨域通信,第 2 部分: 使用 JSONP、jQuery 和 Yahoo! 查询语言构建 mashup

查看原图(大图)

上文已经提到过,YQL 是一种类似于 SQL 的语言,可在 Web 中查询结构化数据。因此,SELECT 是 YQL 语句中的主要动词。其语法也与 SQL 极为相似:

SELECT fields FROM source_table WHERE filter ..

下面的清单展示了一个简单的查询,从纽约时报 RSS 提要检索标题:

select title from rss where url="http://www.nytimes.com/services/xml/rss/nyt/HomePage.xml"

下面是一个更具体的 YQL 示例,检索纽约的素食餐馆,将数量限制为 3 家:

select Title, Address, City, Rating.AverageRating from local.search 
 where query="vegetarian" and location="New York, NY" limit 3

上面的查询会返回类似于清单 1 的 JSON 响应(忽略所返回的关于查询的元数据)。

清单 1. JSON 查询响应

"results": { 
 "Result": [ 
  { 
   "Title": "World of Vegetarian Incorporated", 
   "Address": "24 Pell St", 
   "City": "New York", 
   "Rating": { 
    "AverageRating": "5" 
   } 
  }, 
  { 
   "Title": "Counter", 
   "Address": "105 1st Ave", 
   "City": "New York", 
   "Rating": { 
    "AverageRating": "4" 
   } 
  }, 
  { 
   "Title": "Red Bamboo", 
   "Address": "140 W 4th St", 
   "City": "New York", 
   "Rating": { 
    "AverageRating": "4.5" 
   } 
  } 
 ] 
} 

编缉推荐阅读以下文章

  • 使用 JSONP 实现跨域通信,第 1 部分: 结合 JSONP 和 jQuery 快速构建强大的 mashup

上一页  1 2 3 4 5 6 7  下一页

Tags:使用 JSONP 实现

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接