设为首页收藏本站

IT技术擎 - 最棒的IT web技术交流社区

 找回密码
 注册为IT技术擎人

QQ登录

只需一步,快速开始

搜索
热搜: php h5 jquery
查看: 30|回复: 0

[javascript] js fetch处理异步请求

[复制链接]
发表于 2018-3-8 09:25:36 | 显示全部楼层 |阅读模式
以往一直认为异步请求只能使用原生js的XMLHttpRequest或jQuery的$.ajax()、$.post()等框架封装的异步请求方法
原来js还提供fetch来替代XMLHttpRequest,详情可见 https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API/Using_Fetch
  1. fetch
复制代码
规格不同于
  1. jQuery.ajax()
复制代码
主要有两个方面牢记:


  • 即使响应是HTTP 404或500,返回的Promise
    1. fetch()
    复制代码
    也不会拒绝HTTP错误状态。相反,它将正常解析(
    1. ok
    复制代码
    状态设置为false),它只会拒绝网络故障或阻止要求完成。

  • 默认情况下,如果站点依靠维护用户会话(发送cookie,必须设置credentials

    init选项
    ),
    1. fetch
    复制代码
    则不会发送或接收
    来自服务器的任何cookie,从而导致未经
    身份
    验证的请求。
  1. 1fetch('https://api-to-call.com/endpoint').then(response = >{
  2. 2if(response.ok){
  3. 3 returnresponse.json();
  4. 4}
  5. 5thrownewError('Request failed!');
  6. 6} , networkError = >console.log(networkError.message)
  7. 7).then(jsonResponse = > jsonResponse)
复制代码



上一篇:SQL Server 实现递归查询
下一篇:Mysql之视图的操作
该用户未在地球留下任何的痕迹

本版积分规则

QQ|小黑屋|帮助|IT技术擎 ( 沪ICP备15054863号  

GMT+8, 2018-9-19 01:58

Powered by Discuz! X3.2 Licensed

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表