Express로 서버를 구축하면 URI를 통해 API를 사용할 수 있습니다.
서버 리소스는 API 문서를 통해 사용할 수 있습니다.
그런 다음 클라이언트가 원하는 데이터(URI)를 얻기 위해 URL에 대한 추가 데이터를 제공하면 어떻게 이 데이터를 수신하고 응답할 수 있습니까?
문의
const express = require('express');
const router = express.Router();
router.get('/hi', findAll);
- /안녕?이름 = 김&다음과 같은 URI를 가리킬 때 예를 들어 age=33에 액세스하면 req.query를 사용하여 서버에서 데이터를 가져올 수 있습니다.
- 쿼리를 시작할 때는 ?를 사용하고 여러 날짜를 받을 때는 &로 날짜를 구분한다.
- req.query는 객체이고 req.query.name과 req.query.age에 접근하면 각각 Kim과 33에서 데이터를 얻을 수 있다.
매개변수
const express = require('express');
const router = express.Router();
router.get('/:id', findById);
router.put('/:id', update);
// 생략
- params의 데이터는 라우터에 의해 라우팅됩니다. :ID미리 결정됩니다.
- /idIs1234 와 같은 경로로 접속하면 req.params.ididIs1234가 포함된 것을 확인할 수 있습니다.
- put은 매개변수를 통해 데이터를 전달할 수도 있습니다.
- 미리 라우터에 :id와 같은 이름을 매개변수로 설정해 놓으면 URL을 통해 데이터를 전달하여 서버에서 정보를 얻을 수 있습니다.
- 쿼리 이외 ?ID=붓다 쓰지마그래서 방법은 자유로울 수 있습니다.
몸
const express = require('express');
const router = express.Router();
express.use(express.json());
router.post('/', create);
router.put('/:id', update);
router.post('/sample', (req, res, next) => {
console.log(req.body);
res.status(200).json({"msg": "ok"});
});
- GET 방식에서는 body를 사용하지 않지만, PUT이나 POST를 사용할 때는 body에 데이터를 삽입한다.
- Req.body는 데이터를 객체로 포함합니다.
- express.use(express.json()); req의 본문 값을 구문 분석하도록 설정해야 합니다.