首页 > 其他分享 >Fetch和Fetch API

Fetch和Fetch API

时间:2024-10-24 11:49:20浏览次数:5  
标签:console 请求 res response API Fetch log

认识Fetch和Fetch API

◼ Fetch可以看做是早期的XMLHttpRequest的替代方案,它提供了一种更加现代的处理方案:

  比如返回值是一个Promise,提供了一种更加优雅的处理结果方式
    ✓ 在请求发送成功时,调用resolve回调then;
    ✓ 在请求发送失败时,调用reject回调catch;
  比如不像XMLHttpRequest一样,所有的操作都在一个对象上;

◼ fetch函数的使用:

  input:定义要获取的资源地址,可以是一个URL字符串,也可以使用一个Request对象(实验性特性)类型;
  init:其他初始化参数
    ✓ method: 请求使用的方法,如 GET、POST;
    ✓ headers: 请求的头信息;
    ✓ body: 请求的 body 信息;

Fetch数据的响应(Response)

◼ Fetch的数据响应主要分为两个阶段:
◼ 阶段一:当服务器返回了响应(response)
    fetch 返回的promise 就使用内建的Response class 对象来对响应头进行解析;
    在这个阶段,我们可以通过检查响应头,来检查HTTP 状态以确定请求是否成功;
    如果fetch 无法建立一个HTTP 请求,例如网络问题,亦或是请求的网址不存在,那么promise 就会reject;
    异常的HTTP 状态,例如404 或500,不会导致出现error;
◼ 我们可以在response 的属性中看到HTTP 状态:
    status:HTTP 状态码,例如200;
    ok:布尔值,如果HTTP 状态码为200-299,则为true;
◼ 第二阶段,为了获取response body,我们需要使用一个其他的方法调用。
    response.text() —— 读取 response,并以文本形式返回 response;
    response.json() —— 将 response 解析为 JSON;
  script>
    //1.fetch发起get请求
    // fetch("http://123.207.32.32:8000/home/multidata").then(res=>{
      //1.获取到对应的response
      //2.获取具体结果
      // 1.1未优化
    //   res.json().then(res=>{
    //     console.log(res)
    //   })
    // }).catch(err=>{
    //   console.log(err)
    // })
    // 优化方式一
  //     return res.json()
  // }).then(res=>{
  //   console.log(res)
  // }).catch(err=>{
  //   console.log(err)
  // })

  // 优化方式二:
  // async function getDate() {
  //   const response = await  fetch("http://123.207.32.32:8000/home/multidata")
  //   const res = await response.json()
  //   console.log(res)
  // }
  // getDate()

  // 2.post请求有参数
  async function getDate() {
    const formData = new FormData()
    formData.append("name","hdc")
    formData.append("age",21)
    const response = await  fetch("http://123.207.32.32:1888/02_param/postform",{
      method:"post",
      body:formData
    })
    // 获取response状态
    console.log(response.ok,response.status,response.statusText)
    const res = await response.json()
    console.log(res)
  }
  getDate()
  </script>

Fetch网络请求的演练

Fetch POST请求

标签:console,请求,res,response,API,Fetch,log
From: https://www.cnblogs.com/hdc-web/p/18499305

相关文章

  • 数据库连接技术JDBC—(完整详解,包括JDBC的API,附有案例+代码)
    文章目录一.JDBC初始1.1概述1.2JDBC本质1.3使用JDBC步骤二.JDBCAPI详解2.1DriverManager2.2Connection2.2.1获取执行对象2.2.2事务管理2.3Statement2.4ResultSetResultSet使用练习2.5PreparedStatement2.5.1PreparedStatement用处2.5.2PreparedStatement......
  • 【NodeJS】NodeJS+mongoDB在线版开发简单RestfulAPI (四):状态码的使用
    本项目旨在学习如何快速使用nodejs开发后端api,并为以后开展其他项目的开启提供简易的后端模版。(非后端工程师)由于文档是代码写完之后,为了记录项目中需要注意的技术点,因此文档的叙述方式并非开发顺序(并非循序渐进的教学文档)。建议配合项目源码node-mongodb-template。【NodeJS......
  • 【NodeJS】NodeJS+mongoDB在线版开发简单RestfulAPI (五):POST上传文件的设置
    本项目旨在学习如何快速使用nodejs开发后端api,并为以后开展其他项目的开启提供简易的后端模版。(非后端工程师)由于文档是代码写完之后,为了记录项目中需要注意的技术点,因此文档的叙述方式并非开发顺序(并非循序渐进的教学文档)。建议配合项目源码node-mongodb-template。【NodeJS......
  • 【NodeJS】NodeJS+mongoDB在线版开发简单RestfulAPI (六):token的设置
    本项目旨在学习如何快速使用nodejs开发后端api,并为以后开展其他项目的开启提供简易的后端模版。(非后端工程师)由于文档是代码写完之后,为了记录项目中需要注意的技术点,因此文档的叙述方式并非开发顺序(并非循序渐进的教学文档)。建议配合项目源码node-mongodb-template。【NodeJS......
  • 【NodeJS】NodeJS+mongoDB在线版开发简单RestfulAPI (七):MongoDB的设置
    本项目旨在学习如何快速使用nodejs开发后端api,并为以后开展其他项目的开启提供简易的后端模版。(非后端工程师)由于文档是代码写完之后,为了记录项目中需要注意的技术点,因此文档的叙述方式并非开发顺序(并非循序渐进的教学文档)。建议配合项目源码node-mongodb-template。【NodeJS......
  • 【NodeJS】NodeJS+mongoDB在线版开发简单RestfulAPI (三):Cors的设置及.env文件的设置
    本项目旨在学习如何快速使用nodejs开发后端api,并为以后开展其他项目的开启提供简易的后端模版。(非后端工程师)由于文档是代码写完之后,为了记录项目中需要注意的技术点,因此文档的叙述方式并非开发顺序(并非循序渐进的教学文档)。建议配合项目源码node-mongodb-template。【NodeJS......
  • 【NodeJS】NodeJS+mongoDB在线版开发简单RestfulAPI (二):项目文件夹架构及路由的设置
    本项目旨在学习如何快速使用nodejs开发后端api,并为以后开展其他项目的开启提供简易的后端模版。(非后端工程师)由于文档是代码写完之后,为了记录项目中需要注意的技术点,因此文档的叙述方式并非开发顺序(并非循序渐进的教学文档)。建议配合项目源码node-mongodb-template。【NodeJS......
  • 【NodeJS】NodeJS+mongoDB在线版开发简单RestfulAPI (八):API说明(暂时完结,后续考虑将
    本项目旨在学习如何快速使用nodejs开发后端api,并为以后开展其他项目的开启提供简易的后端模版。(非后端工程师)由于文档是代码写完之后,为了记录项目中需要注意的技术点,因此文档的叙述方式并非开发顺序(并非循序渐进的教学文档)。建议配合项目源码node-mongodb-template。【NodeJS......
  • 探秘拼多多商品详情API接口:开启电商数据洞察之门
    作为一名技术员,在参与涉及拼多多商品详情API接口的项目后,我对这个接口有了深刻的认识和理解。它就像一把钥匙,为我们打开了电商数据洞察的大门。一、项目背景与需求在电商领域,数据是至关重要的。了解商品的详细信息、销售趋势、用户评价等,可以帮助商家做出更明智的决策,提高......
  • 唯品会按图搜索唯品会商品(拍立淘)API 返回值说明
    vip.item_search_img- 按图搜索唯品会商品(拍立淘)API返回值说明1.请求参数请求参数:imgid=/xupload.vip.com/38444a01-e842-49bc-99c7-5267f6d36628_1726122211035_tmp_search.jpg&page_token=参数说明:imgid:唯品会图片地址(先调用上传图片(upload_img)接口,返回图片地址)page......