ACMer博客瀑布流是一个专门收集ACMer博客并展现的站点。地址http://blog.acmicpc.info/php
打开网页以后直接查看源代码发现html
function entry2html(entry) { var html = ''; html += '<div class="box" id="entry-' + entry.rss_entry_id + '">'; html += '<div class="entry-title">'; html += '<a onclick="click_entry(' + entry.rss_entry_id + ')" href="' + entry.link + '" target="_blank">' + entry.title + '</a>'; html += '</div>'; html += '<div class="entry-time">'; html += entry.crawled; html += '</div>'; html += '<div class="entry-author">'; html += '<a href="' + entry.author_link + '" target="_blank"> '; html += entry.author_name; html += '</a>'; html += '</div>'; html += '<div class="entry-summary">'; html += entry.summary; html += '</div>'; html += '<div style="float:right;">'; html += ' <span style="cursor:pointer" onclick="like_entry(' + entry.rss_entry_id + ')"><i class="icon-heart"></i>喜欢(<span class="like_num">' + entry.like + '</span>)</span> '; html += '</div>'; html += '<div style="float:left;">'; html += ' <span><i class="icon-search"></i><span class="click_num">' + entry.click + '</span>人阅读</span> '; html += '</div>'; html += '</div>'; return html; }
很明显,网页中的html代码都是由这个函数来生成的。再搜索一下源代码中什么地方调用的这个函数。ajax
function append_entries() { if (stop) return; $('#load-entry-tip').show(); $.ajax( { dataType : 'json', url : 'ajax_entry.php?from=' + from, success : function(data) { var html = ''; // alert(data); $('#load-entry-tip').hide(); if (data.length == 0) { stop = true; $('#load-entry-tip').html('您看得太多了,休息会吧'); $('#load-entry-tip').show(); return; } $.each(data, function(i, entry) { html += entry2html(entry); }) var dboxes = $(html); $('div#container').append(dboxes).masonry('appended', dboxes); scroll_lock = false; } }) from = from + 1; }
在这里面出现了$.ajax()方法,很明显html页面就是经过调用$.ajax()去向后台接口获取数据的。json
因而就暴露出了后台接口的地址了app
url : 'ajax_entry.php?from=' + from,
整理一下就是ide
http://blog.acmicpc.info/ajax_entry.php?from=0