이 기사에서는 node.js 응용 프로그램에서 시작하고 연결 미들웨어 프레임 워크를 사용하는 방법을 볼 수 있습니다. Connect
Node.js의 경우 패키지 종속성은 NPM으로 수행되므로 응용 프로그램에 필요한 종속 패키지를 지정하고 가져올 수 있습니다. NPM의 패키지 종속성은 package.json이라는 파일에 정의됩니다. 이 파일은 손으로 작성할 수 있지만 NPM 명령을 사용하여 작성하는 것이 더 좋고 강력하게 권장됩니다.
이 작업을 달성하려면 다음 명령을 실행하십시오.
그런 다음 표시되는 질문에 대한 Eply (예 : 패키지 이름 등). 완료되면 "package.json"파일은 아래의 내용과 컨텐츠가있는 루트 폴더에 나타납니다.
이 파일에는 이미 프로젝트에 대한 정보가 포함되어 있지만 종속성은 없습니다. 의존성으로 연결하려면 "package.json"파일에 종속성 값을 추가하고 다음과 같이 업데이트해야합니다.
$ npm init
또는 명령을 실행할 수 있습니다.
<span>{
</span> <span>"name": "nodejs-connect-demo",
</span> <span>"version": "1.0.0",
</span> <span>"description": "Demo on how to use connect framework for Node.js",
</span> <span>"main": "server.js",
</span> <span>"scripts": {
</span> <span>"test": "echo \"Error: no test specified\" && exit 1"
</span> <span>},
</span> <span>"repository": {
</span> <span>"type": "git",
</span> <span>"url": "https://github.com/abbassoftware/nodejs-connect-demo.git"
</span> <span>},
</span> <span>"keywords": [
</span> <span>"connect"
</span> <span>],
</span> <span>"author": "Abbas",
</span> <span>"license": "",
</span> <span>"bugs": {
</span> <span>"url": "https://github.com/abbassoftware/nodejs-connect-demo/issues"
</span> <span>},
</span> <span>"homepage": "https://github.com/abbassoftware/nodejs-connect-demo"
</span><span>}</span>
이 시점에서 다음 NPM 명령을 실행하여 모든 종속성을 다운로드 할 수 있습니다 (이 경우에만 연결).
요청에 응답하기 위해 "hello world"구성 요소를 작성합니다
종속성이 지정되면 Hello Connect 응답을 사용하여 모든 요청에 응답하는 미들웨어 제공 업체를 작성할 수 있습니다. 이렇게하려면 Node.js 프로젝트 디렉토리에 "Server.js"파일을 작성하고 다음 코드를 추가하십시오.
위의 코드에서는 먼저 node.js require () 함수를 사용하여 연결 모듈을로드 한 다음 함수의 리턴 값을 사용하여 서버를 만듭니다. 둘째, 우리는 미들웨어 구성 요소를 만듭니다. 그것은 기능 일뿐입니다.
, 응답 및 다음. 다음은 체인의 다음 핸들러를 나타냅니다. SayHello () 함수는 응답 객체에서 헤더와 응답 텍스트를 설정합니다. 그 후 우리는 사용 () 함수 덕분 에이 미들웨어 구성 요소를 사용합니다. 마지막으로 서버가 포트 3031에서 청취 할 수 있습니다.
이제 아래 명령을 사용하여 Connect 앱을 실행할 수 있습니다.
<span>{
</span> <span>...
</span> <span>"dependencies": {
</span> <span>"connect": "3.x"
</span> <span>},
</span> <span>...
</span><span>}</span>
브라우저를 LocalHost : 3031에 가리키면 다음과 같이 출력을 볼 수 있어야합니다.
npm install connect --save
요청 및 응답 객체
이 섹션에서는 이전 섹션에서 언급 한 요청, 응답 및 다음 매개 변수를 탐구합니다. 요청 객체는 들어오는 요청에 대한 세부 사항을 보유합니다. 요청 객체에서 가장 중요한 정보 중 일부는 다음과 같습니다.
메소드 : 요청 유형을 포함합니다 : get, post 등.
url : 요청의 전체 URL을 포함합니다. 이 URL을 구문 분석하여 요청을 얻기위한 쿼리 매개 변수를 얻을 수 있습니다. -
헤더 : 요청 헤더에 사용할 수있는 속성입니다.
-
응답 객체는 다시 전송 될 응답을 보유합니다. 응용 프로그램에 따라 헤더와 데이터를 추가 할 수 있습니다. 응답 객체의 몇 가지 중요한 기능은 다음과 같습니다
setheader () :이 메소드는 응답에 헤더를 추가합니다.
removeHeader () :이 메소드는 응답의 헤더를 제거합니다
<: :> write () : 응답 객체에 부분 응답을 작성하는 것이 유용합니다.
<: :> end () : 응답의 끝을 표시하는 데 사용되는 메소드입니다. -
Connect
에서 여러 미들웨어 구성 요소 사용을 사용합니다
마지막 섹션에서는 모든 요청에 'Hello Connect'로 응답하는 미들웨어 제공 업체를 만들었습니다. 이제 들어오는 요청의 세부 사항을 기록하는 필터 미들웨어가 하나 더 추가됩니다. 그런 다음 응답을 반환 할 Sayhello ()에게 요청을 전달합니다. 이 다른 작업을 수행하려면 다음 코드로 "Server.js"파일을 업데이트합니다.
위의 코드에서는 loggingmiddleware () 함수를 사용하여 하나 이상의 미들웨어 구성 요소를 추가했습니다. URL과 요청 방법을 기록하고 가능한 이름을 인쇄하도록 URL을 구문 분석합니다.
제공된 매개 변수. 그런 다음 다음 핸들러에게 요청을 전달하는 다음 () 함수를 호출합니다.
Connect Server가 포트를 듣게되면 먼저 LoggingMiddleware ()를 사용한 다음 SayHello ()를 사용합니다. 이제 node.js 서버를 시작하고 다음 명령을 실행하면 다음과 같습니다.
우리는 다음 메시지를 볼 수 있습니다 :
인증 핸들러 추가
다음으로해야 할 일은 HTTP의 기본 액세스 인증을 사용하여 웹 사이트의 관리 섹션에 인증을 추가하는 것입니다. 그렇게하려면 서버의 관리자 섹션에 대해서만 핸들러를 실행할 수있는 방법을 탐색해야합니다. Connect의 사용 () 함수는 첫 번째 매개 변수를 request.url의 경로로 가져갈 수 있습니다. 따라서 관리자 섹션에서만 인증 핸들러를 원한다면 다음과 같이 "Server.js"파일을 업데이트해야합니다.