多搜索应用:结构化数据格式导入与雅虎搜索集成
1. 结构化数据格式导入
标准的网页浏览器能够使用任何 URL 建立 HTTP 连接并检索数据。传统上,这是通过页面刷新来完成的,而最近,Ajax 技术通过 JavaScript 代码异步加载数据。虽然浏览器能很好地渲染 HTML 格式的数据,但这并不是浏览器能获取的唯一数据类型。
1.1 HTML 数据的问题
如果从每个搜索引擎获取 HTML 结果,我们可能能够将结果作为 HTML 片段显示在页面上,甚至可以将它们显示在框架中。然而,这对用户来说并不理想,因为这不是一个统一的界面。用户面临的问题与直接访问每个搜索引擎时相似,搜索结果的格式不同,用户需要学习在哪里查找信息。另一种方法是解析 HTML 以提取数据并以我们自己的格式使用,但这存在三个问题:
1. GWT 没有附带 HTML 解析器。
2. 我们不知道在哪里查找数据。HTML 结构不佳,也不是自描述的,很难理解某些文本的含义。
3. HTML 中的数据位置可能会随着网页设计的微小变化或使用不同的浏览器而改变。
1.2 XML 和 JSON 数据格式
幸运的是,有两种 GWT 能理解、在网络上常见且结构良好的数据格式:XML 和 JSON。大多数 Web 服务和搜索引擎以 XML 格式提供数据馈送,较少提供 JSON 格式。本应用将使用 JSON,要理解为什么使用 JSON,需要了解浏览器的同源策略。
2. 绕过同源策略
2.1 同源策略的原因
网络通常是开放且不安全的,浏览器可以访问任何请求的网页,其中一些网页可能是恶意的。为了尽
JSONP与雅虎搜索集成实战
超级会员免费看
订阅专栏 解锁全文
846

被折叠的 条评论
为什么被折叠?



