You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

NodeJS中调用jQuery的$.ajax报TypeError及document未找到的解决方法

解决Node.js中使用jQuery AJAX报错的问题

嘿,这个问题我之前也碰到过!其实核心原因是jQuery本来是为浏览器环境设计的,Node.js里没有它依赖的浏览器DOM(比如document)和XMLHttpRequest对象,所以直接引入会出现TypeError: $.ajax is not a function或者找不到document的错误。下面给你两种可行的解决思路:

方案一:用jsdom模拟浏览器环境,继续使用jQuery AJAX

如果一定要用jQuery的AJAX语法,需要借助jsdom来模拟浏览器的window环境,让jQuery能正常加载完整功能。

  1. 首先安装依赖:
npm install jquery jsdom
  1. 修改你的代码:
const { JSDOM } = require('jsdom');
// 创建一个模拟的浏览器window环境
const { window } = new JSDOM('');
// 让jQuery挂载到这个window上
const $ = require('jquery')(window);

function test() {
  $.ajax({
    url: 'https://你的请求地址',
    method: 'GET', // 或者POST等
    success: function(response) {
      console.log('请求成功:', response);
    },
    error: function(error) {
      console.error('请求失败:', error);
    }
  });
}

test();

这样就能正常使用jQuery的AJAX方法了,jsdom帮我们模拟了浏览器里的window和XMLHttpRequest对象,同时也解决了document不存在的问题。

方案二:使用Node.js原生HTTP模块或专业请求库(更推荐)

其实在Node.js环境下,没必要依赖jQuery做HTTP请求,有更轻量、更适合Node环境的选择:

选项1:用axios(最简洁)

axios是非常流行的HTTP请求库,支持Promise和async/await,用法比jQuery AJAX更现代。

  1. 安装axios:
npm install axios
  1. 示例代码:
const axios = require('axios');

// 用async/await写法更清晰
async function test() {
  try {
    const response = await axios.get('https://你的请求地址');
    console.log('请求成功:', response.data);
  } catch (error) {
    console.error('请求失败:', error.message);
  }
}

test();

选项2:用Node.js原生http/https模块

如果不想额外安装依赖,可以直接用Node自带的http(或https)模块:

// 注意如果是HTTPS请求,用https模块;HTTP请求用http模块
const https = require('https');

function test() {
  https.get('https://你的请求地址', (response) => {
    let result = '';

    // 接收响应数据块
    response.on('data', (chunk) => {
      result += chunk;
    });

    // 响应结束后处理数据
    response.on('end', () => {
      console.log('请求成功:', result);
    });

  }).on('error', (error) => {
    console.error('请求失败:', error.message);
  });
}

test();

总结

  • 如果你只是习惯了jQuery的语法,可以用方案一,但需要额外安装jsdom;
  • 更推荐方案二,因为这些工具更适配Node.js环境,性能和维护性更好。

内容的提问来源于stack exchange,提问作者Ann S.

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 07:31:56