안녕하세요 익스프레스입니다!
9917 단어 nodejavascriptexpressbeginners
Express는 JavaScript를 사용하여 서버 측 코드를 작성하는 데 도움이 되는 런타임 환경인 Node.js용 웹 애플리케이션 프레임워크입니다.
첫 번째 단계
터미널에서
yarn add express nodemon
를 실행하여 express
및 nodemon
를 프로젝트에 추가합니다.참고:
nodemon
는 앱을 변경할 때마다 서버를 다시 시작하는 도구일 뿐입니다. nodemon
가 없으면 앱에 대한 변경 사항을 보고 싶을 때마다 서버를 수동으로 다시 시작해야 합니다.// import express module
const express = require("express");
// create an express app
let app = express();
/* TODO */
// run the app server on port 3000
app.listen(3000, ()=>{
console.log("your server is running on port 3000")
});
이 몇 줄의 코드는 포트
app
를 수신하는 익스프레스3000
를 만드는 것 외에는 아무 것도 하지 않습니다.첫 번째 줄은 내장 Node 함수
require()
를 사용하여 express
모듈을 가져와 앱을 만드는 데 사용할 수 있습니다.모듈은
require()
를 사용하여 다른 코드로 가져올 수 있는 함수를 내보내는 JavaScript 파일일 뿐입니다.다음과 같이
rectangle
및 area()
함수를 모두 내보내는 모듈perimeter()
이 있다고 가정해 보겠습니다.// rectangle.js
module.exports = {
area : (length, width) => length * width,
perimeter: (length, width) => 2 * length + 2 * width
}
rectangle
모듈을 다음과 같이 다른 코드로 가져와 사용할 수 있습니다.// Note that we have to specify the path to rectangle.js
const rect = require("./rectangle");
// Now we can easily use area() and perimeter() from rectangle.js
console.log(rect.area(3, 5)) // 15
console.log(rect.perimeter(3, 5)) // 16
그리고
express
는 모듈이므로 코드로 가져올 수 있습니다.// import express module
const express = require("express");
// create an express app
let app = express();
이제 터미널에서
nodemon app.js
를 사용하여 서버를 실행하려고 하면 http://localhost:3000/ (앱이 수신 대기 중인 포트)에 Not GET/오류가 표시됩니다.루트 경로인
app
에 대한 get 요청을 수신할 때 무엇을 해야 하는지 아직 /
말하지 않았기 때문에 이는 의미가 있습니다. 우리는 app
포트 3000'을 듣는 것을 제외하고 실제로 지금까지 아무 것도 하라고 말하지 않았습니다. 이제 이 문제를 해결해 보겠습니다.라우팅
app
가 HTTP 동사( GET
, POST
, PUT
, DELETE
등)을 수신하면 다음에 어디로 가야 할지 알아야 합니다. 그렇지 않으면 길을 잃습니다.app
에 경로를 추가하는 것은 지도를 제공하는 것과 같습니다. 요청을 받을 때마다 해당 지도를 확인하여 선택할 경로를 결정합니다. 그리고 지도에 경로가 없는 요청을 보내면 app
"[경로]"를 가져올 수 없습니다.코드에서 어떻게 보이는지 봅시다.
// router.js
const express = require("express")
// import Router from express
let routes = express.Router();
// a route to the root path
routes.get("/", (req, res)=>{
res.send("Hello, Express!")
})
// a route to home
routes.get("/home", (req, res)=>{
res.send("Home sweet home")
})
module.exports = routes
이제 두 개의 경로가 있는 지도가 있습니다.
1- A route to
/
: "Hello, Express!"를 보냅니다. 응답.2- A route to
/home
: "Home sweet home"을 보냅니다.그 지도를
app
에 주자.// import express module
const express = require("express");
// import routes module
const routes = require("./routes");
// create an express app
let app = express();
// let app use routes
app.use(routes)
// run the app server on port 3000
app.listen(3000, ()=>{
console.log("your server is running on port 3000")
});
이제 우리는 2개만 있는 아주 작은
app
을 가지고 있습니다.http://localhost:3000/ : "Hello, Express!"가 표시됩니다.
http://localhost:3000/home/ : "홈 스위트 홈"을 표시합니다.
그게 다야
읽어 주셔서 감사합니다.
Reference
이 문제에 관하여(안녕하세요 익스프레스입니다!), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/hajarnasr/hello-express-11l0텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)