> 웹 프론트엔드 > JS 튜토리얼 > Express.js에서 POST 양식 필드에 어떻게 액세스합니까?

Express.js에서 POST 양식 필드에 어떻게 액세스합니까?

DDD
풀어 주다: 2024-12-10 05:17:09
원래의
212명이 탐색했습니다.

How Do I Access POST Form Fields in Express.js?

Express에서 POST 양식 필드에 액세스하기: 가이드

양식 작업 시 Express에서 POST 양식 필드에 액세스하는 것은 간단한 프로세스일 수 있습니다. 그러나 Express 버전의 미묘한 변화로 인해 접근 방식이 일부 변형되었습니다.

Express 4.16.0 이상

Express 4.16.0부터 도입으로 POST 양식 필드에 액세스하는 것이 단순화되었습니다. express.json() 및 express.urlencoded. 이러한 미들웨어 기능은 JSON 및 URL 인코딩 본문을 각각 구문 분석합니다.

이 접근 방식을 사용하려면 express를 설치하고

$ npm install express
로그인 후 복사

Express 애플리케이션에 다음 미들웨어를 포함합니다.

app.use(express.json());       // to support JSON-encoded bodies
app.use(express.urlencoded()); // to support URL-encoded bodies
로그인 후 복사

이러한 미들웨어가 설치되면 req.body를 사용하여 POST 양식 필드에 액세스할 수 있습니다. object:

// assuming POST: name=foo&amp;color=red            <-- URL encoding
//
// or       POST: {&quot;name&quot;:&quot;foo&quot;,&quot;color&quot;:&quot;red&quot;}  <-- JSON encoding

app.post('/test-page', function(req, res) {
    var name = req.body.name,
        color = req.body.color;
    // ...
});
로그인 후 복사

Express 4.0 ~ 4.15

Express 4.16.0 이전에는 body-parser 패키지 설치 및 해당 미들웨어 사용과 관련된 POST 양식 필드를 처리했습니다.

$ npm install --save body-parser
로그인 후 복사

Express 신청서에 다음 사항을 포함하세요. line:

var bodyParser = require('body-parser')
app.use( bodyParser.json() );       // to support JSON-encoded bodies
app.use(bodyParser.urlencoded({     // to support URL-encoded bodies
  extended: true
})); 
로그인 후 복사

이 구성을 사용하면 POST 양식 필드에 액세스하는 것이 Express 4.16.0의 접근 방식과 유사합니다.

app.post('/test-page', function(req, res) {
    var name = req.body.name,
        color = req.body.color;
    // ...
});
로그인 후 복사

참고: express.bodyParser() 사용은 다음과 같습니다. 권장되지 않으며 express.json(), express.urlencoded() 및 express.multipart()를 결합하여 사용하는 것과 동일합니다. 보안 문제와 함께 멀티파트 인코딩 지원이 특별히 필요한 경우가 아니면 express.bodyParser()를 사용하지 마세요. 멀티파트 인코딩에 대해서는 Express 설명서를 참조하세요.

위 내용은 Express.js에서 POST 양식 필드에 어떻게 액세스합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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