`
riali
  • 浏览: 41598 次
  • 性别: Icon_minigender_1
  • 来自: 上海
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

AJAX案例研究之 google reader

阅读更多

原文发表在 http://www.blogjava.net/emu/archive/2005/12/02/22222.html

google reader是google的另一个AJAX应用,以前前一直误以为是个浏览器插件,因此没有留意。昨天在网友Jared提醒下去开通了一个才见识了一吧。匆匆crack了一下代码,因为刚刚开通上面也没有多少数据,随便晃两眼吧。

首先登录readr,把reader页面另存到本地,得到一个主文件(htm),一个脚本,和一个css样式表。

把html文件中的这行去掉:
<!-- saved from url=(0041)http://www.google.com/reader/things/intro -->


这样xmlhttp就可以无限制的访问网络资源了。

reader引用了一个莫名其妙的js文件,用数字做文件名,不知道名字是不是经常变化的,我昨天下载的时候的名字是: http://www.google.com/reader/ui/874310214-main.js

检查一下数据发送和接收的地方,找到了一个关键点是脚本的第479行:

;D.prototype.Hb=function(a){if(this.overrideCache&&a.indexOf("?")==-1){var b=(new Date()).getTime();a=a+"?"+b}this.uri=a}


uri这样的标识符都保留下来了,充分说明google没有刻意的混淆过代码。我们就从这里入手:

;D.prototype.Hb=function(a){
if(this.overrideCache&&a.indexOf("?")==-1){
var b=(new Date()).getTime();a=a+"?"+b
}
this.uri="http://www.google.com"+a
window.open(this.uri);
}


this.uri="http://www.google.com"+a是为了让xmlhttp能够正确的找到网站。
window.open(this.uri);是为了同时把xmlhttp试图访问的内容用新窗口打开来看看。

carck后的脚本在这里 http://www.blogjava.net/Files/emu/874310214-main.rar。主页面上有我的个人信息,就不上传完整的本地可运行版本了。

保存脚本后重新打开htm页面,可以看到,在页面显示出来的过程中加载了两个动态的xml数据源。

http://www.google.com/reader/atom/user/*********************/state/com.google/reading-list?n=20

http://www.google.com/reader/atom/user/********************%2Fpref%2Fcom.google%2Fprefs?complete=true

中间的星号部分是我的用户编号,就不贴出来了。大家自己试验的时候可以看到自己的。

这两个数据原在浏览器窗口中打开的时候非常出乎意料的,居然返回的是两个xml文件!之前我多次在说google推行AJAH,看来怪错好人了,google也用正宗的AJAX的。

- <feed xmlns="http://www.w3.org/2005/Atom">
<title>user/***************/state/com.google/reading-list</title>
<id>tag:google.com,2005:reader/user/***************//state/com.google/reading-list</id>
<updated>2005-12-02T04:03:50Z</updated>
</feed>

-
<feed xmlns="http://www.w3.org/2005/Atom">
<title>user/***************/pref/com.google/prefs</title>
<id>tag:google.com,2005:reader/user/***************/pref/com.google/prefs</id>
<updated>2005-12-02T04:03:50Z</updated>
</feed>

我刚刚开通reader,里面都还什么数据都没有呢。你看到什么了呢?

分享到:
评论

相关推荐

    AJAX案例研究之Gmail

    Gmail是AJAX技术的典范应用之一,其流畅的邮件处理体验得益于AJAX的强大功能。 Gmail的AJAX实现首先依赖于HTML、CSS和JavaScript。在提供的网页源代码中,我们看到HTML元素、元数据、链接和脚本标签。这些脚本标签...

    AJAX案例研究之详细剖析Gmail应用

    Gmail作为AJAX技术的典范,其应用设计和实现策略值得深入研究。 首先,当我们登录Gmail时,会看到一个包含JavaScript的HTML页面。页面中的JavaScript代码负责创建和管理AJAX请求。例如,`vb()`函数用于在不同浏览器...

    Ajax案例(JSP)

    在这个“Ajax案例(JSP)”中,我们将探讨如何在JSP应用中使用Ajax技术。 首先,了解Ajax的核心概念: 1. **异步通信**:Ajax允许浏览器在不阻塞用户操作的情况下向服务器发送请求,这使得页面在后台与服务器进行...

    Ajax经典案例开发大全源文件

    Ajax经典案例开发大全源文件Ajax经典案例开发大全源文件Ajax经典案例开发大全源文件Ajax经典案例开发大全源文件Ajax经典案例开发大全源文件Ajax经典案例开发大全源文件Ajax经典案例开发大全源文件Ajax经典案例开发...

    ajax图书管理案例

    【Ajax图书管理案例详解】 Ajax(Asynchronous JavaScript and XML)技术是现代Web开发中的一个重要工具,它使得网页可以在不刷新整个页面的情况下与服务器进行数据交互,提升了用户体验。在这个"ajax图书管理案例...

    ASP.NET Ajax 案例

    在"ASP.NET AJAX案例"中,我们可以深入学习如何在实际项目中运用这项技术。这通常包括以下几个方面: 1. **UpdatePanel组件**:这是ASP.NET AJAX中最常见的控件,用于实现页面的部分刷新。通过将控件放入...

    prototype-AJAX案例

    本案例将重点探讨如何利用Prototype框架来实现AJAX的功能。 AJAX,即Asynchronous JavaScript and XML,是一种创建动态网页的技术,允许在不重新加载整个页面的情况下与服务器交换数据并更新部分网页内容。...

    AJAX案例.xls

    AJAX案例基础学习:AJAX案例.xls

    Ajax案例开发.rar

    在"Ajax案例开发.rar"这个压缩包中,很显然包含了一些关于Ajax应用的实例,这些案例可以帮助我们深入理解Ajax的工作原理和实际应用。 首先,我们需要理解Ajax的核心概念。它主要由以下几个关键组件组成: 1. **...

    ajax经典案例开发大全有几个案例

    动态加载数据是Ajax的核心功能之一,特别是在处理大量数据时。例如,滚动页面到底部时自动加载更多内容,这种“无限滚动”效果可以让用户无感知地浏览更多信息,同时减轻了服务器的负载。 ### 6. 自动定时业务 ...

    aspx实现ajax案例

    本案例主要探讨如何在ASP.NET环境中利用C#语言和Ajax技术来创建交互性强、响应快速的Web应用。C#作为.NET Framework的主要编程语言,提供了丰富的服务器端功能,适合处理复杂的业务逻辑和数据操作。 在ASP.NET中...

    Ajax经典案例开发大全

    本书是“网站开发非常之旅”丛书之一,该书用40多个实例覆盖Ajax技术应用的典型场景,用完整的流程图表示函数的调用关系,并指明了实例可扩展或可改进的地方。书中的实例相对独立,可从任何一个开始阅读;该书还讲解...

    AJAX案例 链接数据库

    本文将深入探讨如何利用AJAX技术进行数据库操作,包括增加、删除、修改和查询(CRUD操作),并通过一个具体案例来阐述这一过程。 ### AJAX与数据库交互的基本原理 AJAX的核心在于XMLHttpRequest对象,它提供了一种...

    Ajax 经典案例开发大全

    在本“Ajax经典案例开发大全”中,我们将深入探讨Ajax的各种应用场景和开发技巧。 一、Ajax基础 1. XMLHttpRequest对象:Ajax的核心是XMLHttpRequest对象,它允许JavaScript在后台与服务器交换数据并更新部分网页...

    Ajax经典案例开发大全.

    Ajax in action是Ajax 非常好的书啊

    Ajax案例详解Ajax案例详解

    **Ajax技术概述** Ajax(Asynchronous JavaScript and XML)是一种在无需刷新整个网页的情况下,能够更新部分网页的技术。这种技术结合了JavaScript、XML、DOM、CSS和 XMLHttpRequest对象等多种Web技术,实现了网页...

    ajax (部分案例使用jquery)实例集锦

    总结,这个"ajax (部分案例使用jquery)实例集锦"提供了丰富的Ajax和jQuery结合的实践应用,帮助开发者深入理解这两者如何协同工作,提高网页的动态性和交互性。通过学习这些实例,你可以更好地掌握Ajax技术,并...

    Ajax之谷歌地图

    通过ajax,可以应用于web界面的谷歌地图方法,在LBS技术大行其道当今,该方法是否有一席之地呢?

    PHP-AJAX实现案例

    在这个"PHP-AJAX实现案例"中,我们将深入探讨如何结合使用这两种技术来创建智能搜索功能。 PHP是一种服务器端的脚本语言,广泛用于网页开发,能够生成动态内容。它与HTML、CSS和JavaScript等前端技术紧密结合,为...

    多个Ajax实例案例

    ### 多个Ajax实例案例分析 #### 概述 本文档将通过一个具体的Ajax实例来深入探讨Ajax在网页中的实际应用。此示例主要聚焦于如何利用jQuery库发起Ajax请求,实现动态数据加载与更新的功能。 #### 核心代码解析 ##...

Global site tag (gtag.js) - Google Analytics