Fetch API 提供了一个获取资源的接口(包括跨域请求)。任何使用

过 XMLHttpRequest 的人都能轻松上手,但新的API提供了更强大和

灵活的功能集。

概念和用法

Fetch 提供了对 Request 和 Response (以及其他与网络请求有关的)对象的通用定义。使

之今后可以被使用到更多地应用场景中:无论是service workers、Cache API、又或者是其他

处理请求和响应的方式,甚至是任何一种需要你自己在程序中生成响应的方式。

注意事项:

1. fetch() 必须接受一个参数——资源的路径

2. 无论请求成功与否,它都返回一个 Promise 对象,resolve 对应请求的 Response。你也

可以传一个可选的第二个参数init。

3. 一旦 Response 被返回,就有一些方法可以使用了,比如定义内容或者处理方法(参见 Body)

参数

Promise fetch(input[, init]);

Input:

1. String类型,URL请求

2. Object类型,new Qeuest()

Init:

1. method: get、post...

2. headers: 要添加到请求的任何标头,包含在Headers对象或具有ByteString值的对象文字中。 请注意,某些名称是被禁止的。

3. body: 要添加到请求中的正文,请注意,使用GET或HEAD方法的请求不能包含正文。

4. mode: 您希望用于请求的模式,例如,cors,no-cors或同源。

举例子

const myImage = document.querySelector('img');

let myRequest = new Request('flowers.jpg');

fetch(myRequest)

.then(function(response) {

if (!response.ok) {

throw new Error('HTTP error, status = ' + response.status);

}

return response.blob();

})

.then(function(response) {

let objectURL = URL.createObjectURL(response);

myImage.src = objectURL;

});

const myImage = document.querySelector('img');

let myHeaders = new Headers();

myHeaders.append('Content-Type', 'image/jpeg');

const myInit = { method: 'GET',

headers: myHeaders,

mode: 'cors',

cache: 'default' };

let myRequest = new Request('flowers.jpg');

fetch(myRequest,myInit).then(function(response) {

...

});

java fetch_Fetch使用相关推荐

  1. springboot实现SSE服务端主动向客户端推送数据,java服务端向客户端推送数据,kotlin模拟客户端向服务端推送数据

    SSE服务端推送 服务器向浏览器推送信息,除了 WebSocket,还有一种方法:Server-Sent Events(以下简称 SSE).本文介绍它的用法. 在很多业务场景中,会涉及到服务端向客户端 ...

  2. Java 获取当前时间之后的第一个周几,java获取当前日期的下一个周几

    Java 获取当前时间之后的第一个周几,java获取当前日期的下一个周几 //获得入参的日期 Calendar cd = Calendar.getInstance(); cd.setTime(date ...

  3. 在k8s中使用gradle构建java web项目镜像Dockerfile

    在k8s中使用gradle构建java web项目镜像Dockerfile FROM gradle:6-jdk8 AS build COPY --chown=gradle:gradle . /home ...

  4. Java | kotlin 手动注入bean,解决lateinit property loginService has not been initialized异常

    kotlin.UninitializedPropertyAccessException: lateinit property loginService has not been initialized ...

  5. SpringBoot项目使用nacos,kotlin使用nacos,java项目使用nacos,gradle项目使用nacos,maven项目使用nacos

    SpringBoot项目使用nacos kotlin demo见Gitte 一.引入依赖 提示:这里推荐使用2.2.3版本,springboot与nacos的依赖需要版本相同,否则会报错. maven ...

  6. OpenAPI使用(swagger3),Kotlin使用swagger3,Java使用swagger3,gradle、Maven使用swagger3

    OpenAPI使用(swagger3) demo见Gitte 一.背景及名词解释 OpenAPI是规范的正式名称.规范的开发工作于2015年启动,当时SmartBear(负责Swagger工具开发的公 ...

  7. Gradle错误提示:Java home supplied via ‘xxx.xxx.xxx‘ is invalid

    Gradle错误提示:Java home supplied via 'org.gradle.java.home' is invalid 描述:在使用idea采用gradle进行依赖的管理功能,当想切换 ...

  8. 查看Hotspot源码,查看java各个版本源码的网站,如何查看jdk源码

    java开发必知必会之看源码,而看源码的第一步则是找到源码

  9. java基本类型转换,随记

    java基本类型转换: double double 转 long double random = Math.round(Math.random()*10000); long l = new Doubl ...

最新文章

  1. RedHat 7配置FTP服务
  2. python format
  3. linux c 11 运行库,11.1.3 运行库与I/O
  4. QT使用SQLite数据库实现登录功能
  5. Python元类(type()和metaclass)
  6. 信息学奥赛一本通(2022:【例4.7】最小n值)
  7. MySQL数据库是什么?有什么优点?
  8. Ubuntu 9.10 ati HD 3470 显卡驱动 搞定
  9. silverlight4 开发必备
  10. Mac版Lync无法登陆问题(登录设置)
  11. c语言搜索算法伪代码,FFT算法伪代码
  12. 微信公众号选择什么服务器好,微信开发选择订阅号还是服务号好?
  13. 【米勒拉宾模板】Palindromic Primes
  14. wamp+php+下载,wampserver 64位(php环境搭建安装包)下载_wampserver 64位(php环境搭建安装包)官方下载-太平洋下载中心...
  15. 关于创新创业的书,看这两本就够了
  16. CocosCreator黄金矿工资源工程文件
  17. Python写一个自动化交易程序
  18. 显示商品分类列表页面
  19. 计算机网络(五)—— 运输层(8):TCP的连接建立和连接释放
  20. 重装系统win11服务器未响应怎么修复操作

热门文章

  1. latex表格(图片)跨双栏
  2. python 列表去重的5种方式
  3. 【前端面试必读】在js中为什么0.1+0.2不等于0.3
  4. 完美实现了单次坐标转换同时绘制轨迹
  5. win7回收站恢复方法
  6. python格式化输出以及format()函数
  7. 中国程序员经典名言大集合
  8. EFCore——IQueryable的延迟执行(14)
  9. R语言时间序列代码整理
  10. 【线性筛】线性筛素数