在自己的服務(wù)器上傳了一個(gè)json文件:http://47.75.195.199/NodeApi/...
項(xiàng)目地址
https://github.com/chunsenye/...
test.json
{ "a": "hello!", "b": "this", "c": "is", "d": "my", "e": "first", "f": "api" }
現(xiàn)在通過兩種方式請(qǐng)求它
1. 在node環(huán)境中使用js代碼進(jìn)行http請(qǐng)求 具體代碼如下
getJson.js
//需要先按照request模塊 //npm i request var request = require("request"); // request(url,callback); request("http://47.75.195.199/NodeApi/test.json", function (error, response, data) { //如果請(qǐng)求成功則打印數(shù)據(jù) 否則顯示錯(cuò)誤信息 if (!error && response.statusCode == 200) { console.log(data); }else { console.log(error); console.log(response.statusCode); } });
在改文件目錄下 運(yùn)行 node getJson.js
請(qǐng)求成功 結(jié)果如下
2.在html文件中的js代碼中進(jìn)行http請(qǐng)求(ajax 和 jsonp)
getJson.html
第一次嘗試 直接使用ajax 來(lái) GET 請(qǐng)求數(shù)據(jù)
獲取json數(shù)據(jù)
得到的結(jié)果是這樣的
這就是大名鼎鼎的跨域問題,我們不能直接請(qǐng)求這個(gè)服務(wù)器上的數(shù)據(jù) 但是可以通過jsonp 實(shí)現(xiàn)原理需要知道
第二次嘗試 加多了一行代碼 dataType: "jsonp"
得到結(jié)果是 Uncaught SyntaxError: Unexpected token :
這里是接口的數(shù)據(jù)不對(duì),所以沒辦法獲取,如果要使用jsonp獲取 test.json應(yīng)該這樣寫 加多一個(gè)中括號(hào)
第三次嘗試
test.json
[{ "a": "hello!", "b": "this", "c": "is", "d": "my", "e": "first", "f": "api" }]
請(qǐng)求成功了,數(shù)據(jù)格式也對(duì)了,但是就是一直走error那里,并不會(huì)執(zhí)行成功的回調(diào)
第四次嘗試
還是不行 說(shuō)是還要改服務(wù)器,到這里就很難受了,我剛買的阿里云服務(wù)器 還是centos系統(tǒng)的 目前還不知道如何解決 所以只能換一個(gè)鏈接 用別人的數(shù)據(jù)
更換鏈接:http://apis.juhe.cn/goodbook/...
這是我在聚合申請(qǐng)的一個(gè)接口 請(qǐng)求次數(shù)有限 每天只有一百次
最終請(qǐng)求成功,Chrome瀏覽器會(huì)攔截這樣的代碼 需要允許運(yùn)行。
后面會(huì)處理服務(wù)器的問題,或許有人看到 也可以指點(diǎn)一下我 。我的GitHub https://github.com/chunsenye/... 記得給個(gè)★哈
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/98140.html
摘要:服務(wù)端接收到請(qǐng)求后,通過該參數(shù)獲得回調(diào)函數(shù)名,并將數(shù)據(jù)放在參數(shù)中將其返回收到結(jié)果后因?yàn)槭菢?biāo)簽,所以瀏覽器會(huì)當(dāng)做是腳本進(jìn)行運(yùn)行,從而達(dá)到跨域獲取數(shù)據(jù)的目的。 在使用Vue搭建的一個(gè)后端管理系統(tǒng)中,我使用axios請(qǐng)求本地的Node環(huán)境下的接口,但是請(qǐng)求失敗,然后我錯(cuò)誤信息是:showImg(https://segmentfault.com/img/remote/1460000018521...
摘要:同源策略所謂同源是指協(xié)議,域名,端口均相同。同源策略是瀏覽器的一個(gè)安全功能,不同源的客戶端腳本在沒有明確授權(quán)的情況下,不能讀寫對(duì)方資源。需注意的是由于同源策略的限制,所讀取的為跨域請(qǐng)求接口所在域的,而非當(dāng)前頁(yè)。 一、什么是跨域 1.URL解析 URL (Uniform Resource Locator )統(tǒng)一資源定位符(URL)是用于完整地描述Internet上網(wǎng)頁(yè)和其他資源的地址的...
摘要:在接觸前端開發(fā)起,跨域這個(gè)詞就一直以很高的頻率在我們學(xué)習(xí)工作中重復(fù)出現(xiàn),最近在工作中遇到了跨域的相關(guān)問題,這里我把它總結(jié)記錄一下。 在接觸前端開發(fā)起,跨域這個(gè)詞就一直以很高的頻率在我們學(xué)習(xí)工作中重復(fù)出現(xiàn),最近在工作中遇到了跨域的相關(guān)問題,這里我把它總結(jié)記錄一下。關(guān)于跨域,有N種類型,現(xiàn)在我只專注于ajax請(qǐng)求跨域(ajax跨域只是屬于瀏覽器同源策略中的一部分,其它的這里不做介紹),內(nèi)容...
摘要:關(guān)于,強(qiáng)烈推薦閱讀跨域資源共享詳解阮一峰另外,這里也整理了一個(gè)實(shí)現(xiàn)原理圖簡(jiǎn)化版如何判斷是否是簡(jiǎn)單請(qǐng)求瀏覽器將請(qǐng)求分成兩類簡(jiǎn)單請(qǐng)求和非簡(jiǎn)單請(qǐng)求。 前言 從剛接觸前端開發(fā)起,跨域這個(gè)詞就一直以很高的頻率在身邊重復(fù)出現(xiàn),一直到現(xiàn)在,已經(jīng)調(diào)試過N個(gè)跨域相關(guān)的問題了,16年時(shí)也整理過一篇相關(guān)文章,但是感覺還是差了點(diǎn)什么,于是現(xiàn)在重新梳理了一下。 個(gè)人見識(shí)有限,如有差錯(cuò),請(qǐng)多多見諒,歡迎提出iss...
閱讀 994·2021-11-23 09:51
閱讀 3487·2021-11-22 12:04
閱讀 2727·2021-11-11 16:55
閱讀 2955·2019-08-30 15:55
閱讀 3238·2019-08-29 14:22
閱讀 3361·2019-08-28 18:06
閱讀 1253·2019-08-26 18:36
閱讀 2138·2019-08-26 12:08