Fetch

错误之处,欢迎指正。


1. 简介

FetchHTML5新增的API,是AJAX的改进版本,可以更好的搭配Promise使用。

2. 代码

async function getMessage() {
    const url = 'http://***/api/local';  //必填项
    const config = {
        method: 'POST', //请求方式
        headers: {
            "Content-Type": "application/json"
        },//请求头
        body: `{
            "name": "chris"
        }` //请求体(参数),要匹配请求头中Content-Type所要求的格式
    }//选填项
    const response = await fetch(url, config);
    const result = await response.text();
    //fetch函数返回的是一个Promise对象
    //1. 只要服务器响应了,返回的Promise对象一定是resolved状态
    //2. 网络错误,rejected状态
    //Promise对象的value是一个Respose对象,对象上的text()方法可以把响应结果转换为字符串格式, json()方法可以转换为对象格式。
}

3. Request对象

const req = new Request(url, config);
const resp = await fetch(req);

尽量保证每次都使用新的Request对象进行请求;可以使用req.clone()来克隆一个新的req

4. Headers对象

const headers = new Headers({
  name: 'chris'
})
const req = new Request(url, {
  headers
})

Headers对象提供了一些方法:
has(key)检查是否存在指定的key值。
get(key)得到指定key值的value
set(key, value)修改key值的value
append(key, value)添加键值对。

你可能感兴趣的:(Fetch)