ACMer博客瀑布流分析

ACMer博客瀑布流是一个专门收集ACMer博客并展示的站点。地址http://blog.acmicpc.info/

打开网页之后直接查看源代码发现

1function entry2html(entry) { 2 var html = ''; 3 html += '<div class="box" id="entry-' + entry.rss_entry_id + '">'; 4 html += '<div class="entry-title">'; 5 html += '<a onclick="click_entry(' + entry.rss_entry_id + ')" href="' + entry.link + '" target="_blank">' + entry.title + '</a>'; 6 html += '</div>'; 7 html += '<div class="entry-time">'; 8 html += entry.crawled; 9 html += '</div>'; 10 html += '<div class="entry-author">'; 11 html += '<a href="' + entry.author_link + '" target="_blank">&nbsp;'; 12 html += entry.author_name; 13 html += '</a>'; 14 html += '</div>'; 15 html += '<div class="entry-summary">'; 16 html += entry.summary; 17 html += '</div>'; 18 html += '<div style="float:right;">'; 19 html += '&nbsp;<span style="cursor:pointer" onclick="like_entry(' + entry.rss_entry_id + ')"><i class="icon-heart"></i>喜欢(<span class="like_num">' + entry.like + '</span>)</span>&nbsp;'; 20 html += '</div>'; 21 html += '<div style="float:left;">'; 22 html += '&nbsp;<span><i class="icon-search"></i><span class="click_num">' + entry.click + '</span>人阅读</span>&nbsp;'; 23 html += '</div>'; 24 html += '</div>'; 25 return html; 26}

很明显,网页中的html代码都是由这个函数来生成的。再搜索一下源代码中什么地方调用的这个函数。

1function append_entries() { 2 if (stop) return; 3 4 $('#load-entry-tip').show(); 5 6 $.ajax( { 7 dataType : 'json', 8 url : 'ajax_entry.php?from=' + from, 9 success : function(data) { 10 var html = ''; 11 // alert(data); 12 13 14 $('#load-entry-tip').hide(); 15 16 if (data.length == 0) { 17 stop = true; 18 $('#load-entry-tip').html('您看得太多了,休息会吧'); 19 $('#load-entry-tip').show(); 20 return; 21 } 22 23 $.each(data, function(i, entry) { 24 html += entry2html(entry); 25 }) 26 var dboxes = $(html); 27 $('div#container').append(dboxes).masonry('appended', dboxes); 28 29 scroll_lock = false; 30 } 31 }) 32 33 from = from + 1; 34 35}

在这里面出现了$.ajax()方法,很明显html页面就是通过调用$.ajax()去向后台接口获取数据的。

于是就暴露出了后台接口的地址了

url : 'ajax_entry.php?from=' + from,

整理一下就是

http://blog.acmicpc.info/ajax_entry.php?from=0

原文链接 http://www.ismdeep.com/index.php/archives/34/

点赞
收藏

评论区

加载中...

相关推荐

MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1

文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s

Oracle 分组与拼接字符串同时使用

SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(

MySQL部分从库上面因为大量的临时表tmp_table造成慢查询

背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_

皕杰报表之UUID

​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为

手写Java HashMap源码

HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22

2020年前端实用代码段,为你的工作保驾护航

有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )

ACMer博客瀑布流分析 - HelloWorld