Fetch安裝
npm install whatwg-fetch --save
npm install es6-promise --save
書(shū)籍:
入門(mén): 圖解http
精通: 圖解http權(quán)威指南
get請(qǐng)求示例:
var result = fetch('/api/1', {
credentials: 'include',
headers: {
'Accept': 'application/json, text/plain, */*'
}
});
fetch是引用了插件之后即可用的方法,使用非常簡(jiǎn)單。方法的第一個(gè)參數(shù)是 url 第二個(gè)參數(shù)是配置信息。
credentials: 'include'表示跨域請(qǐng)求是可以帶cookie(fetch 跨域請(qǐng)求時(shí)默認(rèn)不會(huì)帶 cookie,需要時(shí)得手動(dòng)指定 credentials: 'include'。這和 XHR 的 withCredentials 一樣),headers可以設(shè)置 http 請(qǐng)求的頭部信息。
數(shù)據(jù)Mock
前后端分離的情況下。一般使用三種方式解決數(shù)據(jù):
- 模擬靜態(tài)數(shù)據(jù):即按照既定的數(shù)據(jù)格式,自己提供一些靜態(tài)的JSON數(shù)據(jù),用相關(guān)工具(如fis3)做接口來(lái)獲取這些數(shù)據(jù)。該形式使用不比較簡(jiǎn)單的、只用 get 方法的場(chǎng)景,該項(xiàng)目不適用。
- 模擬動(dòng)態(tài)接口:即自己用一個(gè) web 框架,按照既定的接口和數(shù)據(jù)結(jié)構(gòu)的要求,自己模擬后端接口的功能,讓前端項(xiàng)目能順利跑起來(lái)。該方式適用于新開(kāi)發(fā)的項(xiàng)目,后端和前端同時(shí)開(kāi)發(fā),適用于該教程的項(xiàng)目
- 轉(zhuǎn)發(fā)線上接口:項(xiàng)目開(kāi)發(fā)中,所有的接口直接用代理獲取線上的數(shù)據(jù),post 的數(shù)據(jù)也都直接提交到線上。該方式適用于成熟項(xiàng)目中,而該項(xiàng)目是新開(kāi)發(fā)的,沒(méi)有線上接口,不適用。