【Day 29】JavaScript fetch

Fetch() 是 ES6 引入的标准之一。主要是搭配 Promise 来执行 request 请求网站和请求後 response 获取的处理方,同时也提供全域物件的WorkerOrGlobalScope.fetch()方法,使得在网路上非同步地 fetch 网路资源 这件事变得简单易懂。

同样的功能,以前都是使用 XMLHttpRequest,而 Fetch 作为其替代方案,简化了许多原本较为复杂的用法,也让程序码写起来更加乾净易读好维护。

根据MDN,fetch 和 jQuery.ajax() 有三个主要的差异:
1.fetch() 回传的 promise 不会 reject HTTP 的 error 状态,就算是 HTTP 404 或 500 也一样。相反地,它会正常地 resolve,并把 ok 状态设为 false。会让它发生 reject 的只有网路错误或其他会中断 request 的情况。
2.fetch 可以接收跨站的 cookies,你可以用 Fetch 来建立跨站的 session。
3.fetch 不会传送 cookies,除非你有设定 credentials 的 init option。

使用 Fetch 发送请求 ( request )

fetch('request 的网址')
  .then(function(response) {
    return response.json();    //将原始数据转换成json格式,然後返回至下一个then
  })
  .then(function(myJson) {
    console.log(myJson);
  });

<<:  Day14 Let's ODOO: Security(3) Record rules

>>:  番外:用Excel做资料处理的碎碎念

Day-24 DOM Node

DOM节点的建立 建立新元素 建立新元素,系使用 document.createElement(),...

【Day20】维持连线 ─ 工具实作篇(二)

哈罗~ 昨天我们实作了Netcat(nc)的基本操作, 今天想来补充一些类似Netcat(nc)的东...

我们的基因体时代-AI, Data和生物资讯 Day20-注释基因资讯的BED档案格式和bedtools

上一篇我们的基因体时代-AI, Data和生物资讯 Day19-分析和处理基因变异的档案格式VCF的...

难搞的字串符

字符串编码转换 在 python3.x 中,默认采用编码格式为UTF-8 在 python 中,有两...

ASP.NET MVC 从入门到放弃(Day21)-MVC查询资料介绍

接下来讲讲查询 部分... Controller public ActionResult Index...