js fetch

 

 https://www.jianshu.com/p/c2db35881b1a

let myHeaders = new Headers();
myHeaders.append('Content-Type', 'image/jpeg');

let resource = new Request('flowers.jpg');
var init ={
    "method":'GET',
    "headers":myHeaders,
    // headers: {
    // 'Content-Type': 'image/jpeg'
    // },
    "body":,
    "mode":'cors',
    "credentials":"omit",//要用于请求的请求凭据:omit, same-origin, include。若要自动发送当前域的cookie,请使用此选项
    "cache":'default',
    "redirect":"follow",//要使用的重定向模式:follow(自动跟随重定向),error(如果发生重定向,则中止并显示错误)或manual(手动处理重定向)。在Chrome中,默认值为`follow'(在Chrome 47之前默认为`manual')。
    "referrer":"client",
    "referrerPolicy":"no-referrer",//指定引用HTTP标头的值。可以是no-referrer,no-referrer-when-downgrade,origin,origin-when-cross-origin,
    "integrity":"sha256-BpfBw7ivV8q2jLiT13fxDYAe2tJllusRSZ273h2nFSE=",//包含请求的子资源完整性值(例如,sha256-BpfBw7ivV8q2jLiT13fxDYAe2tJllusRSZ273h2nFSE=)。
    "keepalive":,
    "signal":
}
fetchResponsePromise = fetch(resource, init).then(function(response) {
  //返回response对象
  response.headers //包含与响应关联的Headers对象
  response.ok//包含说明响应是否成功(状态范围为200-299)的布尔值。
  response.redirected 
  response.status //包含响应的状态码(例如,200表示成功)。
  response.statusText //获取与状态码对应的状态消息(例如,OK for 200)。
  response.trailers
  response.type 
  response.url //包含响应的URL
  response.useFinalURL
  response.body 
  response.bodyUsed 

  //方法
  response.clone()
  response.error()
  response.redirect()
  //Response implements Body,所以它也有以下可用的方法:
  response.arrayBuffer()
  response.blob()
  response.formData()
  response.json()//将返回的数据转为json格式
  response.text()//将返回的数据转为字符串格式
});

 

posted @ 2019-12-09 23:59  虚无缥缈的云  阅读(701)  评论(0编辑  收藏  举报