2023. 8. 31. 21:05ใ3. Node.js
joi๋ชจ๋
์ค์ฒฉ์ด๋ ์ดํ๋ฆฌ์ผ์ด์ ์์ api๋ก ๋ค์ด์ค๋ ์์ฒญ์ ํ์ธํ๋๋ฐ ์กฐ๊ฑด๋ถ ์ ํจ์ฑ ๊ฒ์ฌ๋ joi๋ฅผ ์ฌ์ฉํจ์ผ๋ก์จ ๊ฐ๋จํ๊ฒ ์ฌ์ฉ์ด ๊ฐ๋ฅํ๋ค.
์ฌ์ฉ๋ฐฉ๋ฒ
1) npm์ ํตํด ๋ชจ๋์ค์น
$ npm install joi --save
2) joi๋ฅผ ๋ถ๋ฌ์จ๋ค
const Joi = require('joi');
3) ๋ํ์ ์ผ๋ก ๋ง์ด ์ฌ์ฉ๋๋ ์ผ์ด์ค๋ ์คํค๋ง์ ๋ฐ์ดํฐ๋ฅผ ๋น๊ตํด์ ์ฌ์ฉ์ด ๊ฐ๋ฅํ๋ค.
const schema = Joi.object({
name: Joi.string().min(3).required(),
email: Joi.string().email().required()
});
์๋๋ ๊ณต์ํํ์ด์ง joi์ ํ์ฉ๋ฒ๊ณผ ์ถ๊ฐ๋กํ์ฉ ๊ฐ๋ฅํ ๋ฐฉ๋ฒ์ด ์์ผ๋ ์ฐธ๊ณ ํด ๋๋ฉด ์ข์๊ฒ ๊ฐ๋ค.
URL : https://joi.dev/api/?v=17.9.1
joi.dev
joi.dev
https://youtu.be/5SFOexX9am8?si=d49BaA4Os2QvLYYw
์์์ ์ค๋ช ํ๋ ๋ถ๋ถ๊ณผ ๊ฐ์ด ํ์๊ฐ์ api๋ฅผ ๋ง๋ค๋, ์ ํ/์ด๋ฉ์ผ ์ ๊ฐ์ ๋ฐ์์ฌ๋
์ ํจ์ฑ๊ฒ์ฌ ์๋ฅผ๋ค๋ฉด ์ด๋ฉ์ผ๊ฐ๊ณผ ์ ํ์ ๊ฐ์ด ํ์์ฌํญ์ด ์๋ ์ ํ์ฌํญ์ผ๋
์ ํธํ๋๊ฒ์ ์ ํํ๋ผ ๋ผ๋ ๋ถ๋ถ์ joi๋ฅผ ํตํด์ ์ ํ์ ๋ง๊ฒ ๊ท์น์ ๋ฃ์ด์ ํธํ๊ฒ ์ฌ์ฉ ํ ์ ์๋ค.

'3. Node.js' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| [ Node.js ์๋ จ์ฃผ์ฐจ1 (1-3)] SQL (Structured Query Language) ์ดํด๋ณด๊ธฐ (0) | 2023.09.03 |
|---|---|
| [ Node.js ์๋ จ์ฃผ์ฐจ1 (1-1)] ๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค (RDB) (3) | 2023.09.01 |
| [ Node.js ์ ๋ฌธ์ฃผ์ฐจ2 (2-0)] REST API, RESTful (0) | 2023.08.27 |
| [ Node.js ์ ๋ฌธ์ฃผ์ฐจ2 (2-0)] Express ๋ฏธ๋ค์จ์ด (0) | 2023.08.27 |
| [ Node.js ์ ๋ฌธ์ฃผ์ฐจ1 (1-12)] Express.js ํ๋ ์์ํฌ (0) | 2023.08.26 |