> 웹 프론트엔드 > 프런트엔드 Q&A > Node.js에서 AJAX 요청을 보내는 방법

Node.js에서 AJAX 요청을 보내는 방법

PHPz
풀어 주다: 2023-04-05 09:20:42
원래의
1434명이 탐색했습니다.

AJAX 기술이 발전함에 따라 점점 더 많은 프런트엔드 애플리케이션이 상태를 업데이트하거나 새 데이터를 얻거나 일부 작업을 수행하기 위해 서버에 비동기 요청을 보내야 합니다. Node.js는 클라이언트가 보낸 AJAX 요청에 대한 응답으로 이러한 작업을 수행할 수 있도록 서버 측에서 JavaScript를 사용할 수 있게 해주는 전체 스택 프레임워크입니다. 이 기사에서는 Node.js에서 AJAX 요청을 보내는 방법을 살펴보겠습니다.

1. 종속성 설치

Node.js에는 HTTP 요청 및 응답을 위한 내장 http 모듈이 있습니다. AJAX 기술을 사용하려면 Node.js에서 http.request() 메서드를 사용해야 합니다. http 模块,用于 HTTP 请求和响应。为了使用 AJAX 技术,在 Node.js 中我们需要使用 http.request() 方法实现。

在开始之前,我们需要安装 http 模块。

可以通过以下命令进行安装:

npm install http --save
로그인 후 복사

命令行中使用上述命令安装后,我们可以看到 http 相关的文件已经被下载到项目中。

二、使用 http.request() 发送 AJAX 请求

在 Node.js 中,我们可以使用 http.request() 方法来发送 AJAX 请求,该方法需要传递一个 options 对象,该对象设置了请求的一些参数,如请求 URL、请求方法、请求头。这里,我们使用 POST 方法作为例子。

const http = require('http');

const options = {
  hostname: 'localhost',
  port: 3000,
  path: '/api/add',
  method: 'POST',
  headers: {
    'Content-Type': 'application/json'
  }
};

const req = http.request(options, res => {
  console.log(`statusCode: ${res.statusCode}`);

  res.on('data', d => {
    process.stdout.write(d)
  });
});

req.on('error', error => {
  console.error(error)
});

req.write('{"name": "John Doe"}');
req.end();
로그인 후 복사

上述代码向 URL 为 localhost:3000/api/add 的服务器发送了一个 POST 请求,请求头中包含了 Content-Type,其值为 application/json,请求体为 JSON 数据 {"name": "John Doe"}

三、使用第三方库发送 AJAX 请求

尽管 Node.js 内置了 http 模块,但是要在一些复杂的场景下发送 AJAX 请求非常麻烦。因此,为了方便,我们可以使用一些优秀的第三方库,如 axiosrequest 等。

其中,axios 可能是最受欢迎的一个库,它可以同时在浏览器端和 Node.js 中使用,提供了非常简洁的 API,可以让我们轻松地发送 AJAX 请求。

我们可以通过以下命令安装 axios

npm install axios --save
로그인 후 복사

在代码中使用 axios

const axios = require('axios');

axios.post('http://localhost:3000/api/add', {
    name: 'John Doe'
})
.then(response => {
    console.log(response.data);
})
.catch(error => {
    console.log(error);
});
로그인 후 복사

上述代码向 URL 为 http://localhost:3000/api/add 的服务器发送了一个 POST 请求,请求体为 JSON 数据 {"name": "John Doe"}。在成功之后,打印服务器返回的数据 response.data

四、总结

本文介绍了在 Node.js 中使用 AJAX 技术向服务器发起异步请求的方法,包括使用 http 模块和第三方库 axios

시작하기 전에 http 모듈을 설치해야 합니다. 🎜🎜다음 명령을 통해 설치할 수 있습니다. 🎜rrreee🎜위 명령을 명령줄에서 사용하여 설치하면 프로젝트에 http 관련 파일이 다운로드된 것을 확인할 수 있습니다. 🎜🎜2. http.request()를 사용하여 AJAX 요청 보내기🎜🎜Node.js에서는 http.request() 메서드를 사용하여 AJAX 요청을 보낼 수 있습니다. 이 경우 전달이 필요합니다. 요청 URL, 요청 방법, 요청 헤더 등 요청의 일부 매개변수를 설정하는 옵션 개체입니다. 여기서는 POST 메서드를 예로 사용합니다. 🎜rrreee🎜위 코드는 localhost:3000/api/add URL을 사용하여 서버에 POST 요청을 보냅니다. 요청 헤더에는 Content-Type이 포함되어 있으며 해당 값은 application입니다. . /json, 요청 본문은 JSON 데이터 {"name": "John Doe"}입니다. 🎜🎜3. 타사 라이브러리를 사용하여 AJAX 요청 보내기🎜🎜Node.js에는 http 모듈이 내장되어 있지만 일부 복잡한 시나리오에서 AJAX 요청을 보내는 것은 매우 번거로운 일입니다. 따라서 편의를 위해 axios, request 등과 같은 우수한 타사 라이브러리를 사용할 수 있습니다. 🎜🎜그 중 axios는 아마도 브라우저와 Node.js 모두에서 사용할 수 있으며 AJAX 요청을 쉽게 보낼 수 있는 매우 간단한 API를 제공합니다. 🎜🎜다음 명령을 통해 axios를 설치할 수 있습니다: 🎜rrreee🎜코드에서 axios 사용: 🎜rrreee🎜위 코드의 URL은 http:/ /localhost: 3000/api/add에 있는 서버가 POST 요청을 보냈고 요청 본문은 JSON 데이터 {"name": "John Doe"}였습니다. >. 성공하면 response.data 서버가 반환한 데이터를 인쇄합니다. 🎜🎜IV. 요약🎜🎜이 기사에서는 http 모듈 및 타사 라이브러리 axios를 사용하는 것을 포함하여 Node.js에서 서버에 대한 비동기 요청을 시작하기 위해 AJAX 기술을 사용하는 방법을 소개합니다. 를 사용하여 AJAX 요청을 보내는 것은 Node.js에 능숙한 프런트엔드 개발자에게 매우 유용합니다. 더 나은 API를 제공할 뿐만 아니라 일부 복잡한 세부 사항과 극단적인 사례도 처리할 수 있는 타사 라이브러리를 사용하는 것이 좋습니다. 🎜

위 내용은 Node.js에서 AJAX 요청을 보내는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿