본문 바로가기

Request3

0x00 에러해결(A string literal cannot contain NUL (0x00) characters) 발생한 문제 데이터를 bulk_create or bulk_update해야하는데 데이터 사이에 0x00이 들어간 데이터 때문에 저장할때마다 에러가 발생했습니다. 에러 이름 A string literal cannot contain NUL (0x00) characters. 해당 데이터가 어떤식으로 들어오는지 로그를 조회하니 다음과 같은 데이터가 들어온 것을 확인할 수 있습니다. "달리는커피 시그니처\x00파스타, 두부가라아게 추가" 이렇게 \x00데이터 때문에 다음과 같은 에러가 나왔습니다.. 처음에는 그냥 string에서 제공하는 replace()로 해결하려고 replace(’\x00’, ‘’)로 처리했는데 변경한것 없이 그대로 "달리는커피 시그니처\x00파스타, 두부가라아게 추가" 이렇게 들어왔습니다. 그.. 2022. 12. 19.
14-Authentication 인증은 들어오는 request를 request보낸 사용자 또는 서명된 토큰과 같은 일련의 식별 자격 증명과 연결하는 메커니즘입니다. 그런 다음 권한 및 제한 정책은 해당 자격 증명을 사용하여 요청을 허용해야 하는지 여부를 결정할 수 있습니다. REST 프레임워크는 기본적으로 여러 인증 체계를 제공하며 사용자 지정 체계를 구현할 수도 있습니다. 인증은 항상 view의 맨 처음, 권한 및 throttling 검사가 발생하기 전, 그리고 다른 코드가 계속 진행되도록 허용되기 전에 실행됩니다. request.user 속성은 일반적으로 contrib.auth 패키지의 User 클래스 인스턴스로 설정됩니다. request.auth 속성은 추가 인증 정보에 사용됩니다. 예를 들어 request에 서명한 인증 토큰을 .. 2021. 9. 26.
1. DRF-Requests Requests DRF는 Request클래스를 좀 더 표준적인 HttpRequest로 확장합니다. 이것을 통해 좀 더 유연하게 request parsing과 request authentication이 가능합니다. Request Parsing DRF에서 Request 객체는 일반적으로 양식 데이터를 처리하는 것과 동일한 방식으로 JSON 데이터 또는 다른 미디어 유형을 사용하여 요청을 처리할 수 있는 form-data를 제공해줍니다. .data request.data 는 request body에 파싱된 콘텐츠들을 반환해줍니다. 이것은 request.POST의 표준과 유사합니다. 그리고 request.FILES의 다음과 같은 속성을 제외합니다. 모든 파싱된 콘텐츠들은 파일과 파일이 아닌 입력을 포함합니다. .. 2021. 5. 30.