使用XMLHttpRequest对象进行网络请求的步骤

使用XMLHttpRequest对象进行网络请求的基本步骤如下:

1:创建XHR对象:

复制代码
const xhr = new XMLHttpRequest();

2:初始化请求:

复制代码
xhr.open(method, url, async);

method: HTTP请求方法,如 'GET', 'POST', 'PUT', 'DELETE' 等。
url: 请求的目标URL地址。
async: 是否异步执行,默认为 true。

3:设置请求头:

复制代码
xhr.setRequestHeader('Content-Type', 'application/json');

如果需要设置请求头,可以在此步骤完成。

4:监听请求状态变化:

复制代码
xhr.onreadystatechange = function() {
  if (xhr.readyState === 4 && xhr.status === 200) {
    // 请求成功,处理响应数据
    console.log(xhr.responseText);
  }
};

xhr.readyState 用于跟踪请求的状态变化:
    0: 请求未初始化
    1: 服务器连接已建立
    2: 请求已接收
    3: 请求处理中
    4: 请求已完成,且响应已就绪
xhr.status 用于获取HTTP响应状态码。

5:发送请求:

复制代码
    if (method === 'POST') {
      xhr.send(JSON.stringify(data));
    } else {
      xhr.send();
    }

    对于 POST 请求,需要传递请求体数据,通常需要将其转换为JSON格式。
    对于 GET 请求,可以直接调用 send() 方法。

这就是使用XMLHttpRequest对象进行网络请求的基本步骤。现在大多数情况下会使用更简单的Fetch API或者基于Axios的库来发送网络请求,它们提供了更简洁的API和更好的错误处理等功能。

相关推荐
我命由我123455 小时前
CSS - CSS 媒体查询 orientation
前端·javascript·css·html·css3·html5·js
志尊宝8 小时前
Vue3 零基础每日笔记(048):嵌套路由与命名视图——后台管理系统布局雏形
前端·javascript·vue.js·笔记·html5
志尊宝9 小时前
Vue3 零基础每日笔记(052):路由常见坑一次排雷——404、刷新丢参数、部署白屏
前端·javascript·vue.js·笔记·html5
志尊宝2 天前
Vue3 零基础每日笔记(037):动手封装 useMouse 与 useWindowSize——事件监听的标准模板
前端·javascript·vue.js·笔记·html5
志尊宝2 天前
Vue3 零基础每日笔记(047):动态路由与路由参数——:id 传参、query 传参、props 解耦
前端·javascript·vue.js·笔记·html5
梦想的颜色3 天前
【AI科普】AI 时代,纯 H5+CSS PK React & Vue:前端技术孰优孰劣深入剖析
ai·前端框架·大模型·vue·react·html5·vibecoding
志尊宝4 天前
Vue3 零基础每日笔记(032):Suspense 与异步组件——懒加载与顶层 await 终极方案
前端·javascript·vue.js·笔记·html5
志尊宝5 天前
Vue3 零基础每日笔记(027):组件上的 v-model——让自定义组件也能双向绑定
前端·javascript·vue.js·笔记·html5
志尊宝5 天前
Vue3 零基础每日笔记(024):组件的创建与使用——从 import 到自动导入
前端·vue.js·笔记·前端框架·html5
梦帮科技5 天前
Next.js 16 模块化单体实战:App Router、领域模块与 Route Handler 分层
css·数据结构·链表·正则表达式·node.js·json·html5