상세 컨텐츠

본문 제목

[Redis] 바이트 반환 값

알고리즘, 백엔드/Serendi

by grizzly 2025. 7. 24. 11:19

본문

이메일을 통해서 인증 번호를 받고 인증 번호 인증을 통해 같은 사용자 임을 인증 받는 코드를 작성하였다.

그런데 처음 시도에서

stored_number == input_number  #False 
stored_number == str(input_number) #False

두 경우 모두 실패하였다.

 

확인한 결과, 초기 발생 시켰다 인증 번호를 redis에 저장하는 과정에서 str로 되어있었다.

이를 해결 하기 위하여 input_number를 str로 타입 변환을 한 다음 비교하였으나 다시 실패하였다.

 

다시 한 번 디버깅을 하여 확인한 결과 b"1234" 이런식으로 되어 있었다.

redis_config 파일에서 서버를 실행시키고 redis 객체를 받아서 사용하였는데 내부에 저장된 값을 rd.get()으로 가져오니 반환값이 bytes의 형태였다. get() 함수의 반환 값이 bytes임을 몰라서 생겼던 오류였다. 따라서 이 값을 우리가 평소에 사용하는 변수 값처럼 사용하기 위하여 encode 함수를 호출하여 해결하였다.

 

redis.get() 함수는 반환값으로 bytes값을 준다.

관련글 더보기