JS AJAX请求怎么发送_JS AJAX异步请求与fetchAPI使用方法

AJAX异步通信主要用fetch和XMLHttpRequest,fetch基于Promise语法简洁,支持async/await,成为主流选择;XMLHttpRequest兼容性好但代码冗长。1. fetch发送GET请求:fetch(‘url’).then(res => res.json()).then(data => console.log(data));2. 使用async/await更清晰:async function getData(){ const res = await fetch(‘url’); if(!res.ok) throw new Error(); const data = await res.json(); };3. POST请求需设置method、headers和stringify的body;4. XMLHttpRequest需监听onreadystatechange,readyState为4且status为200时表示成功,需手动解析JSON;5. fetch默认不报错需检查response.ok,可用AbortController取消请求;6. 推荐优先使用fetch,复杂场景可选axios等库。

js ajax请求怎么发送_js ajax异步请求与fetchapi使用方法

AJAX(Asynchronous JavaScript and XML)是前端开发中实现异步通信的核心技术,它允许我们在不刷新页面的情况下与服务器交换数据。在现代JavaScript中,发送AJAX请求主要有两种方式:传统的 XMLHttpRequest(常通过jQuery封装使用),以及更现代的 fetch API。下面详细介绍这两种方法的实际用法。

使用 fetch API 发送异步请求

fetch 是浏览器原生提供的API,基于 Promise,语法简洁,支持 async/await,已成为主流选择。

● 基本 GET 请求:

获取数据是最常见的操作。

示例:

PatentPal专利申请写作 PatentPal专利申请写作

AI软件来为专利申请自动生成内容

PatentPal专利申请写作 13 查看详情 PatentPal专利申请写作

fetch('https://api.example.com/data')  .then(response => {    if (!response.ok) {      throw new Error('网络错误');    }    return response.json();  })  .then(data => {    console.log(data);  })  .catch(error => {    console.error('请求失败:', error);  });

● 使用 async/await 写法更清晰:

async function getData() {  try {    const response = await fetch('https://api.example.com/data');    if (!response.ok) throw new Error('请求失败');    const data = await response.json();    console.log(data);  } catch (error) {    console.error('错误:', error);  }}getData();

● 发送 POST 请求(提交数据):

async function postData() {  const response = await fetch('https://api.example.com/users', {    method: 'POST',    headers: {      'Content-Type': 'application/json',    },    body: JSON.stringify({      name: '张三',      age: 25    })  });  if (!response.ok) throw new Error('提交失败');  const result = await response.json();  console.log(result);}postData();

● 常见配置项说明:method:请求方法,如 GET、POST、PUT、DELETE headers:设置请求头,特别是发送 JSON 数据时需指定 Content-Type body:POST 或 PUT 请求时携带的数据,必须是字符串(通常用 JSON.stringify)

传统 AJAX:XMLHttpRequest 基础用法

虽然 fetch 更现代,但了解 XMLHttpRequest 有助于理解底层机制。

● 简单 GET 请求示例:

const xhr = new XMLHttpRequest();xhr.open('GET', 'https://api.example.com/data', true);xhr.onreadystatechange = function () {  if (xhr.readyState === 4 && xhr.status === 200) {    const data = JSON.parse(xhr.responseText);    console.log(data);  }};xhr.send();

● POST 请求示例:

const xhr = new XMLHttpRequest();xhr.open('POST', 'https://api.example.com/users', true);xhr.setRequestHeader('Content-Type', 'application/json');xhr.onreadystatechange = function () {  if (xhr.readyState === 4 && xhr.status === 201) {    console.log('创建成功');  }};xhr.send(JSON.stringify({ name: '李四', age: 30 }));

● 注意事项:readyState 为 4 表示请求完成 需手动解析 JSON(使用 JSON.parse) 错误处理较繁琐,不如 fetch 直观

fetch 与 XMLHttpRequest 的对比

两者都能实现异步请求,但存在明显差异:

fetch 返回 Promise,天然支持链式调用和 async/await fetch 默认不会报错(即使状态码是 4xx 或 5xx),需要手动检查 response.ok XMLHttpRequest 兼容性更好(IE 可用),但代码冗长 fetch 不支持取消请求(可用 AbortController 实现),而 xhr 可调用 abort()● 使用 AbortController 取消 fetch 请求:

const controller = new AbortController();fetch('/api/data', { signal: controller.signal })  .then(res => res.json())  .then(data => console.log(data));// 在需要时取消请求controller.abort();

基本上就这些。日常开发推荐优先使用 fetch API,结构清晰,易于维护。对于复杂场景或需要兼容老版本浏览器的项目,可考虑封装 xhr 或引入 axios 等第三方库。

以上就是JS AJAX请求怎么发送_JS AJAX异步请求与fetchAPI使用方法的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/292490.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年11月4日 21:10:44
下一篇 2025年11月4日 21:14:54

相关推荐

  • 苹果手机下载币安APP操作方法(附全套注册、充值、购买BTC教程)

    Binance币安 欧易OKX ️ Huobi火币️ 苹果手机下载币安APP是可行的,但因地区政策和应用商店规则限制,无法直接在App Store搜索到。操作核心是通过官网渠道获取安装包,并完成设备信任授权。注册与交易流程清晰,关键在于准确填写信息并遵守安全验证步骤。 下载与安装币安APP 由于币安…

    2025年12月9日
    000
  • 实时追踪比特币?2025年10月这5款APP不容错过!

    随着数字货币市场的不断演进,实时、准确地追踪比特币价格动态对于投资者而言至关重要。本文将为您盘点2025年10月最值得信赖的五款行情追踪与交易app,帮助您在瞬息万变的市场中做出明智决策。 1. 币安 (Binance) 作为全球交易量领先的加密货币交易平台,币安APP提供了无与伦比的深度和流动性。…

    2025年12月9日
    000
  • 投资加密货币:风险与收益的平衡术

    在数字时代浪潮的推动下,一种新兴的投资工具——加密货币,正以其独特的魅力吸引着全球投资者的目光。从比特币的横空出世,到以太坊的崛起,再到数以万计的山寨币层出不穷,加密货币市场仿佛一块磁石,牢牢吸附着渴望财富增长和技术革新的个体。然而,这片看似充满无限机遇的数字金矿,其背后也隐藏着不容忽视的巨大风险。…

    好文分享 2025年12月9日
    000
  • 一文搞清楚哪些Meme币拥有最强基本盘

    Binance币安 欧易OKX ️ Huobi火币️ 要判断一个Meme币是否拥有最强基本盘,不能只看价格涨跌或短期热度。真正的“基本盘”指的是那些持有时间长、投入深、社区认同感强的忠实用户群体。他们不因市场波动轻易离场,反而会主动传播、参与生态建设,形成强大的集体信念。通过链上数据和社区行为分析,…

    2025年12月9日
    000
  • 币圈十大资讯权威app有哪些?币圈最好用的交易软件

    Binance币安 欧易OKX ️ Huobi火币️ 想找靠谱的币圈资讯和交易软件,关键看数据是否实时、界面是否好用、平台是否安全。下面分两块说清楚,直接告诉你哪些最实用。 币圈十大资讯权威App 这类App不让你直接买币,但能看行情、盯新闻、分析趋势,是做决策的好帮手。 CoinGecko:数据全…

    2025年12月9日
    000
  • 加密货币交易所app下载(2025最新排名)

    在日益数字化的金融世界中,加密货币交易所已成为数字资产交易的核心枢纽。对于希望进入或深化其在加密货币领域参与度的个人而言,选择一个可靠、安全且用户友好的交易平台至关重要。 以下是2025年一些领先的加密货币交易所应用程序的排名: 1. Binance 提供超过数百种加密货币的广泛交易对,满足多样化的…

    2025年12月9日 好文分享
    000
  • Synthetix (SNX)币飙升80%:SNX会推出以太坊上的首个Perps DEX 吗?

    链上永续合约在2025年再次成为焦点,开发者们正在寻求一种具有类似clob执行方式的主网结算设计。 Binance币安 欧易OKX ️ Huobi火币️ Synthetix (SNX)正在为那一刻做准备:链下订单匹配、在以太坊上进行链上结算,并计划于2025年第四季度推出直接创建在L1上的永续合约D…

    2025年12月9日 好文分享
    000
  • ouyi交易所手机/邮箱/身分验证应用无法使用怎么办?原因、方法解析

    如果您的安全设定(手机/信箱/身分验证应用程式)无法使用,需要进行重置,重置后24 小时内无法提币和c2c 卖币。 登录状态下,请在个人中心,选择【个人资料和设置】 – 【安全设置】 – 【验证方式】 下选择要重置的安全验证项。 未登录状态下,输入账号、密码后登录账户,在身份…

    2025年12月9日 好文分享
    000
  • Zora ($ZORA)是什么?怎么买?ZORA价格预测2025, 2026–2030

    Binance币安 欧易OKX ️ Huobi火币️ Zora是什么以及为何重要 ‍ Zora (ZORA) 是一个专为创作者、艺术家和文化社区打造的 以太坊二层(L2)区块链和NFT协议 。其使命简单而革命性: 让所有人都能轻松铸造、收集和交易NFT — 无需承担传统平台的高昂gas费用或面对准入…

    2025年12月9日 好文分享
    000
  • 币圈热词速览:掌握加密世界的“黑话”

    在充满活力与变数的加密货币世界,一套独特的行话、俚语乃至“黑话”应运而生,它们构成了币圈文化不可或缺的一部分。对于初入此领域的投资者而言,掌握这些词汇如同拥有了一把解读加密世界深层逻辑的钥匙。它们不仅是沟通的工具,更是理解市场情绪、技术趋势以及社群动态的关键。想象一下,当你的朋友们热烈讨论着“梭 哈…

    好文分享 2025年12月9日
    000
  • Fleek(FLK)币是什么?值得投资吗?Fleek工作原理、代币经济学及未来展望

    fleek 是一个由%ignore_a_1%驱动的社交平台,创作者和粉丝可以通过内置创作者代币和自动奖励来创作、混音和变现内容。该平台由 harrison hines 和 janison sivarajah 于 2019 年创立,总部位于纽约,已从 polychain capital、coinbas…

    2025年12月9日
    000
  • 币安将对受崩盘影响的用户进行补偿,如何注册登录?

    Binance币安 欧易OKX ️ Huobi火币️ 需要了解的内容 Binance 将逐一审查账户,以确定对受 wBETH、BNSOL 和 USDe 崩盘影响的用户的赔偿。随着币安基础设施的崩溃,包装代币价格暴跌,使得做市商更难稳定价格。Binance 宣布将采用转换率定价来对包装资产进行定价。 …

    2025年12月9日 好文分享
    000
  • 什么是殴易(0KX)双币赢?OKX双币赢产品解析与投资策略

    什么是OKX双币赢? 简而言之,OKX双币赢是一种结合了期权机制的结构化投资产品。用户通过锁定一种加密资产(如BTC或ETH),有机会获得另一种计价货币(通常是USDT)的固定收益。 其核心在于“双币”:你投入的是某一种数字资产(例如BTC),最终收回的可能是另一种资产(如USDT),具体结果取决于…

    2025年12月9日 好文分享
    000
  • 交易所大揭秘:币圈交易的核心枢纽

    在数字货币的浩瀚宇宙中,交易所扮演着至关重要的角色,它们不仅仅是买卖加密资产的平台,更是连接着无数投资者、项目方以及整个区块链生态系统的核心枢纽。想象一下,如果没有这些如同繁忙港口一般的交易所,你手头的比特币、以太坊将何去何从?它们将无法便捷地流通、定价,甚至难以被广阔市场所认可。因此,深入了解交易…

    好文分享 2025年12月9日
    000
  • Bitcoin Hyper(HYPER)币是什么?HYPER价格预测2025-2030年

    目录 Bitcoin Hyper ($HYPER) – ICO 摘要Bitcoin Hyper价格预测2025年比特币价格预测2026年比特币价格预测Bitcoin Hyper2030价格预测HYPER 代币未来可能表现的清晰表格什么是Bitcoin Hyper项目?Bitcoin Hyper项目值…

    2025年12月9日 好文分享
    000
  • Matchain (MAT) 是什么币?MAT未来展望及价格预测

    Binance币安 欧易OKX ️ Huobi火币️ Matchain(MAT)是一种结合区块链与人工智能技术的去中心化数字身份平台代币。它的核心目标是让用户真正拥有并控制自己的个人数据,而不仅仅作为登录工具。通过其独特的MatchID系统,用户可以将多个Web2账户(如X、Telegram、Dis…

    2025年12月9日
    000
  • ChainOpera AI (COAI) 币是什么?COAI代币经济学、未来前景及价格预测

    Binance币安 欧易OKX ️ Huobi火币️ ChainOpera AI(COAI)于2025年10月9日在Bitget等主流交易所上线USDT计价(U标)永续期货交易,引起市场关注。 ChainOpera AI(COAI)是一个运行在BNB链上的去中心化AI代理网络,COAI是其原生代币。…

    2025年12月9日
    000
  • ZEC币逆势上涨 37%,隐私赛道还有哪些项目值得关注?一文介绍

    本文分析讲述了在 10.11 合约最大清算日后,隐私赛道的强劲反弹势头,特别是 $zec 在不到半个月内接近 400% 的惊人涨幅,并剖析了这一赛道在监管重压下的反弹驱动力、历史进程,以及当前的主要投资机会和风险。 Binance币安 欧易OKX ️ Huobi火币️ 2025 年 10 月 11 …

    2025年12月9日 好文分享
    000
  • 以太坊ETH价格预测:2030 年以太坊的价值将何去何从?一文分析

    在全球加密货币市场总市值再度突破 4 万亿美元的背景下,以太坊(ethereum, eth)正重新站在技术与金融革新的前沿。从早期的智能合约平台,到如今承载数千个去中心化应用(dapps)、去中心化金融(defi)与 nft 生态的底层基石,eth 的长期价值已经超越了“数字资产”的范畴,成为区块链…

    2025年12月9日
    000
  • 币安中的聪明钱和聪明钱信号是什么?如何运作?币安聪明钱信号操作教学

    想知道大玩家们在想什么吗?感觉就像在猜测巨鲸是否站在你这边?  Binance币安 欧易OKX ️ Huobi火币️ 了解一下聪明钱信号,这是币安期货智能货币中的一项新功能,它可以帮助您了解高绩效交易者和鲸鱼的交易情况,他们是实时做多还是做空,等等。 通过快速扫描,您可以获得易于理解的数据,以便在考…

    2025年12月9日 好文分享
    000

发表回复

登录后才能评论
关注微信