안녕하세요!
Node.js에서 REST API 방식으로 개발을 할때 파라미터 검증 방식에 대해 질문 드립니다!
질문 여러분은 API의 파라미터를 검증할 때, 보통 어떤 방식을 사용하시나요?
그리고 제 방법에 대한 피드백과 실무에서는 어떤 방식, 라이브러리를 사용하는지 말씀 해주시면
정말 감사하겠습니다!!
–> 저는 ValidationUtil을 만들어서 사용하였습니다.
// isJsonValid(요청객체, 필수파라미터 배열)
static isJsonValid(req, required_params) {
let keyArr = Object.keys(req);
for (var i=0; i<keyArr.length; i++) {
try {
if (!keyArr[i] || !required_params.includes(keyArr[i])) {
// 필요한 파라미터가 없음
return false;
}
} catch(error) {
// 필수 파라미터 없다고 가정
// 에러 로깅
return false;
}
}
// 필수 파라미터 전부 있음
return true;
}
이런식으로 유틸 함수를 만들고,
GET /users/{user_id} : 사용자 아이디 중복검사 API
// 사용자 아이디 중복 검사
app.get('/users/:user_id', function(req, res) {
if (isJsonValid(req.params, ["user_id"])) {
// 400 error 리턴
}
// ... 아이디 중복 검사 로직 ...
});
이런 방식으로 사용하였습니다.
제 방식에 대한 피드백과 실무에서 사용하는 방식들 소개 해주시면 정말 감사하겠습니다ㅎㅎ
읽어주셔서 감사합니다.