본문 바로가기

Node.js/NPM

사용자가 입력한 값의 유효성을 판단해주는 노드 모듈 - hapi/joi

joi는 로그인이나 회원 가입 같은 경우

사용자가 잘못된 입력 값을 넣었을 때

경우에 따른 에러 메시지를 손쉽게 만들어주는 모듈이다.

현재 예전의 joi는 deprecated 되었고

아래의 링크에서 hapi/joi의 사용법을 확인할 수 있다.

 

https://hapi.dev/module/joi/

 

아래는 서버에 유효하지 않은 값이 들어 왔을 때 joi를 이용해서 처리하는 예제다.

 

const Joi = require('joi');

 

app.post('/api/users', (req, res) => {

    const schema = {

        name: Joi.string().min(3).required() // name이 갖춰야할 값의 조건을 설정

    }

 

    const result = Joi.validate(req.body, schema);

    if (result.error) {

        res.status(400).send(result.error.details[0].message); // 값의 어떤 조건에 문제가 있는지 응답

        return;

    }

    /* ... */

});