利用jsonp調(diào)用聚合數(shù)據(jù)API

聚合數(shù)據(jù)中找到免費(fèi)的API接口薄啥,申請(qǐng)通過(guò)后會(huì)得到相應(yīng)的APIkey镊屎。

對(duì)應(yīng)的js代碼塊如下:
    function shows ( data ) {
     // console.log(data);   //本行供測(cè)試使用
        var reason = data.reason;   //返回結(jié)果
        if(reason != "success"){
            inp.value = "";
            inp1.value = "";
            show.innerHTML = "";
            alert("Sorry!數(shù)據(jù)庫(kù)暫未收錄\n我們將不斷更新链瓦!");
    //     如果返回的不是success信息发乔,控制臺(tái)就會(huì)報(bào)錯(cuò)熟妓,所以采用這種方法,用戶(hù)輸入的結(jié)果查詢(xún)不到時(shí)栏尚,彈出信息起愈,并將輸入的內(nèi)容清空。
        }else{  
            var html = "";
            var staname = data.result[0].name;                //線路名稱(chēng)
            var company = data.result[0].company;            //公交線路所屬公司
            var front_name = data.result[0].front_name;         //首發(fā)站名稱(chēng)
            var terminal_name = data.result[0].terminal_name;   //終點(diǎn)站名稱(chēng)
            var start_time = data.result[0].start_time.slice(0,2)+":"+
                            data.result[0].start_time.slice(2); //早班車(chē)時(shí)間译仗,此處經(jīng)過(guò)了字符串的處理抬虽,由于源數(shù)格式為沒(méi)有冒號(hào)隔開(kāi)的時(shí)間字符串
            var end_time = data.result[0].end_time.slice(0,2)+":"+
                            data.result[0].end_time.slice(2);   //末班車(chē)時(shí)間,處理方法同上
            var length = parseFloat(data.result[0].length).toFixed(3); //線路總程
            var total = data.result[0].stationdes.length;
            html += "<p>"+staname+"</p><p><i class='first'>所屬公交公司:</i>"+
                        company+"</p><p><i>首發(fā)站:</i>"+
                        front_name+"</p><p><i>終點(diǎn)站:</i>"+
                        terminal_name+"</p><p><i>早班車(chē)時(shí)間:</i>"+
                        start_time+"</p><p><i>末班車(chē)時(shí)間:</i>"+
                        end_time+"</p><p><i>線路總程:</i>"+
                        length+"km</p><p><i>全程共:</i>"+
                        total+"站</p>";
            for(var i = 0; i < total; i++){
                //console.log(data.result[0].stationdes[i].name);
                var sta = data.result[0].stationdes[i].stationNum;
                var _name = data.result[0].stationdes[i].name;
                html += "<span>第"+sta+"站:</span>"+_name+"<br>";//第幾站:途徑站點(diǎn)
            }
            show.innerHTML = html;
        }
    }
    btn.onclick = function(){
        var script = document.createElement("script");
        script.src = "http://op.juhe.cn/189/bus/busline?"+
                    "key=40bfefaea964d5fc943e7a67c398d66c&city="+
                    inp.value+"&bus="+inp1.value+"&dtype=jsonp&callback=shows";
            document.body.appendChild(script);
    }

index首頁(yè)會(huì)顯示兩個(gè)輸入框和一個(gè)搜索按鈕纵菌,
第一個(gè)搜索框輸入城市阐污,第二個(gè)搜索框輸入公交線路,點(diǎn)擊查詢(xún)咱圆,即可搜索到對(duì)應(yīng)的公交線路笛辟。

2017-01-14_162607.png

(嘎嘎,請(qǐng)忽略我這醉人的樣式~~~~~~)
如圖序苏,效果預(yù)覽隘膘,列出了所取數(shù)據(jù)的信息。

jsonp解決了跨域訪問(wèn)的問(wèn)題杠览。巧妙地利用了script標(biāo)簽的src屬性弯菊。
寫(xiě)法還是較為簡(jiǎn)單的,格式比較簡(jiǎn)單踱阿。


在使用接口之前管钳,可以測(cè)試API接口是否可以使用jsonp方法獲取數(shù)據(jù)
  • 將得到的接口地址放入地址欄并轉(zhuǎn)到。

  • 地址欄的地址格式為:

    2017-01-14_164948.png

    即: 接口地址 软舌? dtype = jsonp & key = 你的Appkey & 必填屬性1 = 屬性值1 & 必填屬性2 = 屬性值2

  • 測(cè)試后 頁(yè)面的數(shù)據(jù)格式 會(huì)在開(kāi)頭和末尾加上 大括號(hào)----> { 數(shù)據(jù) }

  • 之后再加上請(qǐng)求函數(shù)名(自定義)比如:&callback = show 數(shù)據(jù)兩端會(huì)出現(xiàn)小括號(hào)才漆,這樣的數(shù)據(jù)就可以作為jsonp形式來(lái)請(qǐng)求


-------------------首次寫(xiě)文章,markdown比較生疏佛点,望江湖人士不吝賜教

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末醇滥,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子超营,更是在濱河造成了極大的恐慌鸳玩,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,755評(píng)論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件演闭,死亡現(xiàn)場(chǎng)離奇詭異不跟,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)米碰,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,305評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門(mén)窝革,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)购城,“玉大人,你說(shuō)我怎么就攤上這事虐译”癜澹” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 165,138評(píng)論 0 355
  • 文/不壞的土叔 我叫張陵漆诽,是天一觀的道長(zhǎng)侮攀。 經(jīng)常有香客問(wèn)我,道長(zhǎng)拴泌,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,791評(píng)論 1 295
  • 正文 為了忘掉前任惊橱,我火速辦了婚禮蚪腐,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘税朴。我一直安慰自己回季,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,794評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布正林。 她就那樣靜靜地躺著泡一,像睡著了一般。 火紅的嫁衣襯著肌膚如雪觅廓。 梳的紋絲不亂的頭發(fā)上鼻忠,一...
    開(kāi)封第一講書(shū)人閱讀 51,631評(píng)論 1 305
  • 那天,我揣著相機(jī)與錄音杈绸,去河邊找鬼帖蔓。 笑死,一個(gè)胖子當(dāng)著我的面吹牛瞳脓,可吹牛的內(nèi)容都是我干的塑娇。 我是一名探鬼主播,決...
    沈念sama閱讀 40,362評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼劫侧,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼埋酬!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起烧栋,我...
    開(kāi)封第一講書(shū)人閱讀 39,264評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤写妥,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后审姓,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體耳标,經(jīng)...
    沈念sama閱讀 45,724評(píng)論 1 315
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,900評(píng)論 3 336
  • 正文 我和宋清朗相戀三年邑跪,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了次坡。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片呼猪。...
    茶點(diǎn)故事閱讀 40,040評(píng)論 1 350
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖砸琅,靈堂內(nèi)的尸體忽然破棺而出宋距,到底是詐尸還是另有隱情,我是刑警寧澤症脂,帶...
    沈念sama閱讀 35,742評(píng)論 5 346
  • 正文 年R本政府宣布谚赎,位于F島的核電站,受9級(jí)特大地震影響诱篷,放射性物質(zhì)發(fā)生泄漏壶唤。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,364評(píng)論 3 330
  • 文/蒙蒙 一棕所、第九天 我趴在偏房一處隱蔽的房頂上張望闸盔。 院中可真熱鬧,春花似錦琳省、人聲如沸迎吵。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,944評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)击费。三九已至,卻和暖如春桦他,著一層夾襖步出監(jiān)牢的瞬間蔫巩,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,060評(píng)論 1 270
  • 我被黑心中介騙來(lái)泰國(guó)打工快压, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留批幌,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,247評(píng)論 3 371
  • 正文 我出身青樓嗓节,卻偏偏與公主長(zhǎng)得像荧缘,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子拦宣,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,979評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容

  • 國(guó)家電網(wǎng)公司企業(yè)標(biāo)準(zhǔn)(Q/GDW)- 面向?qū)ο蟮挠秒娦畔?shù)據(jù)交換協(xié)議 - 報(bào)批稿:20170802 前言: 排版 ...
    庭說(shuō)閱讀 10,983評(píng)論 6 13
  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 172,162評(píng)論 25 707
  • 創(chuàng)新驅(qū)動(dòng)包容發(fā)展--宜商再出發(fā) --2016成都宜商中秋聯(lián)誼會(huì)暢談建言 尊敬的呂會(huì)長(zhǎng)截粗、各位老鄉(xiāng)企業(yè)家朋友...
    觀海聽(tīng)濤ZHU閱讀 436評(píng)論 4 0
  • 沒(méi)看電影之前,據(jù)說(shuō)是一部國(guó)產(chǎn)文藝片鸵隧,并且廣受好評(píng)绸罗。看到電影開(kāi)篇的時(shí)候明白豆瘫,原來(lái)所有的打分里面更多的是對(duì)導(dǎo)演吳天明的...
    子非_似是而非閱讀 215評(píng)論 0 0
  • 新韻格律詩(shī)一組 (一)珊蟀、七絕二首.晨起抒懷 其一 童心未泯春常在, 遠(yuǎn)志猶存再抗?fàn)帯?守到風(fēng)來(lái)云散盡, 一輪紅日照...
    水波楊山閱讀 475評(píng)論 0 8