文库一点收怎样实现的?


百度文库一点收

个人分析一点收的流程:
1 利用JS将客户端所在页面POST服务器,
2 服务器经过分析去噪后将标题、内容返回给客户端。
3 客户端用JS将返回的内容渲染并盖住当前页面。
4 客户端将用户修改后的数据提交服务器。

涉及到的技术: JS跨域,网页去噪,AJAX等。
另发现文库一点收JS代码中总出现XIMPORTER,求大侠指点。

请大侠详细分析,并指出我的错误,不甚感激!

Ajax 文库 百度 JavaScript

dogmoon 11 years ago

加载 JS http://wenku.baidu.com/collect/pcboot?timestamp=1371541331341

这个 JS 分为几个部分,首先是 jQuery.1.8.3.min,然后是 ParseElement,用于提取页面的文章标题和内容(网页去噪),接着是 croDomain,用于 iframe 的跨域。

然后 JS 加载了一个 iframe, http://wenku.baidu.com/collect/pclayer?href= {location.href}(这个页面没有内容),然后用 croDomain 给这个 frame 里发送 ParseElement 得到的内容。至于到了 iframe 里我没仔细看。

  1. 利用 JS 加载一个页面,
  2. JS 经过分析去噪后直接获取标题、内容。
  3. 将获取的标题内容送到 iframe 里。
  4. iframe 里再有 ajax 将修改后的内容 post 到 baidu 上。
asukahe answered 11 years ago

Your Answer