웹 개발

RLS 정책 설정을 항상 기억하자.........................

ImJaeOne 2025. 2. 14. 01:19

바야흐로 3시간 전....

auth 관련 Provider를 구현하시는 팀원 분이 문제에 부딪혀서 같이 살펴보았습니다.

로그인을 할 시 로그인을 성공해도 아래의 에러가 발생했습니다. 

console을 살펴보니 뭐 허용되지 않았다고 

2번째 에러 console로

  • code: 'PGRST116' → PostgREST에서 발생한 특정 오류 코드
  • details: 'The result contains 0 rows' → 쿼리 실행 결과가 0개의 행을 반환했음
  • message: 'JSON object requested, multiple (or no) rows returned' → JSON 객체를 요청했지만, 여러 개의 행이 반환되었거나(1개 이상) 아무 행도 반환되지 않음

이러한 에러가 출력되었습니다...

분명히 user table에는 data가 있는데 도대체 왜 해당 user 테이블에 접근을 못하는거니.....

 

그렇게 코드를 고치고 회원가입을 다시 해보고 토큰도 삭제해보고 여러가지 시도를 다 해보고 멘붕에 빠져있던 와중....

다시 마음을 다 잡고 처음으로 돌아가 보기로 했습니다.

 

그렇게 다시 한번 에러 메시지를 읽어보던 와중...

 

제가 지금까지 왜 코드를 한 줄도 안 올렸을까요???

코드는 문제가 없었으니까요 하하ㅏ하하ㅏ

 

자 api를 요청하던 url을 읽어보니 딱 눈에 들어오는 selectNot Acceptable..

select로 접근을 못하네요 이걸 왜 다 지나고 자세히 봤을까요? 분명히 강의에서도 강조하고 강조하던 RLS policy 정책을 설정해줘야 하는데.... 그럼 한번 select를 추가해볼까요?

하나만 추가했다가 나머지를 까먹을 수도 있으니 다 추가해버렸습니다.

네 잘 뜨네요....

 

오늘은 에러 메시지를 잘 읽자... 라는 교훈을 얻게 된 하루였습니다...