亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費注冊 查看新帖 |

Chinaunix

  平臺 論壇 博客 文庫
最近訪問板塊 發(fā)新帖
查看: 3912 | 回復: 0
打印 上一主題 下一主題

使用豆瓣API顯示圖書列表 [復制鏈接]

論壇徽章:
0
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報告]
發(fā)表于 2008-07-30 15:15 |只看該作者 |倒序瀏覽
你可以使用豆瓣提供的豆瓣秀代碼生成器把新收藏自動顯在blog上,豆瓣開放了API以后,你還可以根據(jù)API自己寫一個。下面就是一個簡單的示例(效果可以看本站的頁尾部分),其中douban.params是請求的參數(shù)列表,cat是顯示類別,比如書籍book或者電影movie等,start-index是開始的索引,max-results是返回的最大結(jié)果,alt是請求返回類型(默認為xml,還可以是json或者xd),apikey是你在豆瓣申請的apikey,最后的callback是回調(diào)函數(shù),其他的參數(shù)可以看豆瓣API參考手冊。因為本例是使用JSONP的方式處理返回的JSON數(shù)據(jù),根據(jù)豆瓣的規(guī)定,這里alt的值應該是xd。parseEntry和render是主要的兩個函數(shù),前者分析返回的JSON數(shù)據(jù),后者控制數(shù)據(jù)在頁面中的顯示。如果你想自己動手寫一個玩玩,這是示例也是個不錯的開始。


function $(el){ return document.getElementById(el);}
var douban = {
    baseUrl:'http://api.douban.com/people/nkuer/collection',
    params:{
        cat:'book',
        'start-index':1,
        'max-results':50,
        alt:'xd',
        apikey:'*******',
        callback:'douban.appendHTML'
    },
    magicBox:'douban',
    buildUrl:function(){
        var ps = this.params,string='';
        for(var i in ps)
            string += i + '='+ ps[i]+ '&';
        return this.baseUrl+"?"+string;
    },
    appendRequestScript:function(url){
        var head = document.getElementsByTagName("head")[0];
        var script = document.createElement("script");
        script.src = url;
        script.charset = 'utf-8';
        head.appendChild(script);
    },
    appendHTML:function(json){
        $(this.magicBox).innerHTML = this.render(this.parseJSON(json));
    },
    parseJSON:function(json){
        var itemCollection=[];
        for(var i in json.entry)
            itemCollection.push(this.parseEntry(json.entry[i]));
        return itemCollection;
    },
    parseEntry:function(entry){
        var linkItem = {};
        var linkEntry  = entry["db:subject"]["link"];
        linkItem.title = entry["db:subject"]["title"]["$t"];
        linkItem.src = 'http://panweizeng.com/images/douban-no-image.jpg';
        for(var i in linkEntry){
            if(linkEntry[i]['@rel'] == 'image')
                linkItem.src = linkEntry[i]['@href'];
            if(linkEntry[i]['@rel'] == 'alternate')
                linkItem.link = linkEntry[i]['@href'];
        }
        return linkItem;
    },
    render:function(itemCollection){
        var html='<table><tr>';
        for(var i in itemCollection){
            html+='<td><a href="'
                +itemCollection[i].link+'" target="_blank"><img src="'
                +itemCollection[i].src+'" alt="'
                +itemCollection[i].title+'" border="0" /></a></td>';
        }
        return html+"</tr></table>";
    },
    init:function(){
        this.appendRequestScript(this.buildUrl());
    }
}
douban.init();
您需要登錄后才可以回帖 登錄 | 注冊

本版積分規(guī)則 發(fā)表回復

  

北京盛拓優(yōu)訊信息技術有限公司. 版權所有 京ICP備16024965號-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報專區(qū)
中國互聯(lián)網(wǎng)協(xié)會會員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關心和支持過ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP