> 웹 프론트엔드 > 프런트엔드 Q&A > Node.js에서 POST 요청을 처리하고 요청 매개변수를 가져오는 방법

Node.js에서 POST 요청을 처리하고 요청 매개변수를 가져오는 방법

PHPz
풀어 주다: 2023-04-07 12:56:57
원래의
1651명이 탐색했습니다.

웹 애플리케이션이 지속적으로 개발됨에 따라 사용자는 데이터 상호 작용에 대한 요구가 점점 더 많아지고 있습니다. 그중에서도 POST 요청의 사용이 더욱 분명해졌습니다. Node.js에서 POST 요청을 처리할 때 일반적으로 클라이언트가 보낸 데이터를 얻고 구문 분석해야 합니다. 이 기사에서는 Node.js에서 POST 요청을 처리하고 요청 매개변수를 가져오는 방법을 소개합니다.

POST 요청 수신

Node.js에서는 http 모듈을 사용하여 웹 서버를 만들고 요청을 수신할 수 있습니다. 간단한 코드를 살펴보겠습니다.

const http = require('http');

http.createServer(function(request, response) {

    // 处理请求

}).listen(3000);
로그인 후 복사

이 코드에서는 웹 서버를 생성하고 포트 3000을 수신했습니다. 요청이 전송될 때마다 서버는 요청과 함께 전달한 함수를 매개변수로 호출하고 응답에 대한 응답 객체를 생성합니다.

참고: 위 코드는 POST 요청을 처리하지 않지만, 요청을 수신하고 응답하기 위한 기본 프레임워크를 제공하며, 이는 POST 요청을 수신하기 위한 기반으로 사용할 수 있습니다.

POST 요청 매개변수 가져오기

클라이언트가 POST 요청을 보낼 때 다음 두 가지 방법으로 요청 매개변수를 가져올 수 있습니다.

  1. 이벤트 모니터링

이벤트 모니터링 방법이 가장 일반적으로 사용됩니다. POST 요청의 매개변수를 얻기 위해 요청 객체의 데이터 이벤트와 종료 이벤트를 수신할 수 있습니다.

const http = require('http');
const querystring = require('querystring');

http.createServer(function(request, response) {

    if(request.method === 'POST') {

        let post = '';

        request.on('data', function(chunk) {
            post += chunk;
        });

        request.on('end', function() {
            post = querystring.parse(post);
            // 处理post数据
        });

    }

}).listen(3000);
로그인 후 복사
로그인 후 복사

위 코드에서는 요청이 POST인지 확인하고, 그렇다면 전역 변수 post를 캐시로 생성합니다. 그런 다음 요청 객체의 데이터 이벤트를 수신하여 POST 매개변수가 바이너리 형식으로 post 변수에 전달됩니다. 마지막으로 요청 객체의 종료 이벤트를 수신하여 post 변수를 구문 분석하고 JavaScript 객체로 변환합니다.

POST 요청 데이터가 매우 클 수 있으므로 데이터를 완전히 전송하려면 여러 데이터 이벤트가 필요할 수 있다는 점에 유의해야 합니다. 따라서 캐싱 메커니즘을 사용하여 완전한 요청이 수신될 때까지 전송된 데이터를 저장한 다음 이를 핸들러에 전달해야 합니다.

  1. querystring parsing

querystring 모듈은 URL의 쿼리 문자열을 처리하기 위한 Node.js 내장 모듈 중 하나입니다. 이 모듈은 쿼리 문자열을 JavaScript 개체로 변환하는 구문 분석() 메서드를 제공합니다.

const http = require('http');
const querystring = require('querystring');

http.createServer(function(request, response) {

    if(request.method === 'POST') {

        let post = '';

        request.on('data', function(chunk) {
            post += chunk;
        });

        request.on('end', function() {
            post = querystring.parse(post);
            // 处理post数据
        });

    }

}).listen(3000);
로그인 후 복사
로그인 후 복사

이 예에서는 querystring 모듈을 사용하여 POST 요청의 매개변수를 구문 분석하고 이를 post 변수에 저장했습니다.

요약

위의 두 가지 방법은 이벤트 수신 및 쿼리 문자열 구문 분석을 사용하여 POST 요청 매개변수를 얻고 이를 처리할 수 있도록 JavaScript 개체로 변환합니다.

실제 애플리케이션에서는 실제 필요에 따라 POST 요청 매개변수를 처리하기 위해 다양한 방법을 사용하도록 선택할 수 있습니다. 대규모 POST 요청 데이터를 효율적으로 처리해야 하는 경우 이벤트 수신 방법이 더 나은 선택일 수 있습니다. 일부 간단한 양식 요청만 처리해야 하는 경우 쿼리 문자열 코드가 더 간결하고 이해하기 쉽습니다.

POST 요청을 받은 후에는 보안 문제를 피하기 위해 요청 매개변수를 주의 깊게 확인하고 처리해야 합니다.

위 내용은 Node.js에서 POST 요청을 처리하고 요청 매개변수를 가져오는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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