-
#TIL(error)_잔잔바리 실수로 인해 겪었던 부끄러운 errorTIL (Today I Learned) 2023. 12. 1. 00:25
코드의 모든 err중 99%는 humen error 나로 인해 발생한다.
-나 자신에게 feat:정신차리자 제발-
같은 실수를 반복하지 않고 에러 처리에 익숙해지고자 부끄럽지만 TIL(error)를 시작합니다.# 1. api-docs 파일안에 products.http 생성 후 상품 생성 테스트 중 에러 발생
** rest client로 API Test > send
** 예상치 못한 에러 발생
** 터미널 확인 시 'Products.descript cannot be null'이라는 메시지 확인
오류 메시지를 살펴보면 'Products.descript cannot be null'이라는 메시지가 보입니다. 여기서 오타가 있는 것으로 보입니다. 데이터베이스 마이그레이션 파일에는 description 필드가 있지만, 오류 메시지에는 descript가 나와있습니다.
** descript 수정 전
** descript > description 으로 수정 후
** 다시 재실행 > ???????????? 당황하지 말고 다시 집중
** 터미널 다시 확인 'Unknown column 'description' in 'field list' 메시지 확인
오류 메시지인 'Unknown column 'description' in 'field list'는 데이터베이스에 Products 테이블에 description 컬럼이 존재하지 않아서 발생한 것으로 보입니다. 이를 해결하기 위해서는 Sequelize 모델과 데이터베이스 스키마를 동기화해야 합니다.
** 명령어가 길어서 script로 미리 설정했습니다.
** npm run migrate:down 실행
*** npm run migrate:up 실행
*** 다시 서버 포트 실행시켜줍니다.
*** Test 성공 반환 완료!!!!
# 2. 목록조회 API 만든 후 실행 시 오류발생
** 목록 조회 API 작성 내용
** rest client로 API Test > send
** 예상치 못한 에러 발생
** 바로 터미널을 확인해줍니다.
Executing (default): SELECT `id`, `userId`, `title`, `description`, `status`, `createdAt`, `updatedAt` FROM `Products` AS `Products` ORDER BY `Products`.`createAt` DESC;
Error 확인
주어진 오류는 Sequelize를 사용하여 MySQL 데이터베이스에서 쿼리를 실행할 때 발생한 것으로 보입니다. 오류 메시지를 보면 오타가 있는 것으로 보이는데, ORDER BY 절에서 Products.createAt 대신에 Products.createdAt로 오타가 난 것으로 보입니다. (createAt 대신에 createdAt을 사용해야 함)
** 오타 찾아서
** 오타 수정
** 다시 Send
** 정상적으로 반환되었습니다.
# 3. API TEST 중 그냥 제일 가장 어이없었던 실수,,,,,,,,,,,,,,,,,,,,,
** SyntaxError: Unexpected token } in JSON at position 25를 보고 바로 구글링
** 구글링 한 블로그
Uncaught SyntaxError: Unexpected token [문자] in JSON at position ~
오류 VM1042:1 Uncaught SyntaxError: Unexpected token ㅊ in JSON at position 13 먼저 오류가 나는 원인은 JSON 형태일 때와 아닐 때 2가지이며, 1. JSON 형태가 아닐때 오류가 난다. => 간단하게 JSON 형태로 바꾸면 문
memme.tistory.com
syntaxerror: unexpected token < in json at position 0 에러 오류 해결 방법
syntaxerror: unexpected token < in json at position 0
velog.io
** 한참을 멍때리다가 갑자기 눈에 보인 콤마......JSON 형태에서 마지막엔 ,를 붙이면 안된다...
ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ한 시간 동안 뭐한거지ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ진짴ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ정신 차리잨ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ
** 다시 Send 정상적으로 반환 확인
'TIL (Today I Learned)' 카테고리의 다른 글
#TIL_Prisma에 대하여!.! (0) 2023.12.08 #TIL_ EC2를 이용해서 프로젝트 배포하기(1편 EC2 생성하기) (1) 2023.12.04 #TIL(error)_REST API와 Postman 오류에 대하여 (0) 2023.11.29 #TIL_express cookie-parser를 적용해보자!.! (0) 2023.11.28 nullish 병합 연산자(??)와 OR 논리 연산자(||)의 차이점!.! (0) 2023.11.26