[소셜로그인] JSONDecodeError: Expecting value: line 1 column 1 (char 0)

hodu·2022년 8월 23일

소셜로그인 시

requests.exceptions.JSONDecodeError: Expecting value: line 1 column 1 (char 0)

위 에러를 만나게 된다면,

반드시 "헤더"를 확인해 볼 것.

소셜로그인서비스마다 헤더 양식이 달라서 변경해주어야 함.
응답받은 값이 json타입으로 변경이 되지 않은 상태라 json으로 접근할 수가 없기 때문에 생기는 에러다.

kakao소셜로그인

Content-type을 이용해야 한다.

    header = {'Content-type': 'application/x-www-form-urlencoded;charset=utf-8'}

github소셜로그인

Accept로 작성해주어야 한다.

	header = {'Accept': 'application/json'}

나머지 소셜서비스는 각 문서에 제대로 작성되어 있으므로 잘 확인해보자!

도대체 OAuth는 외 이런건 맞춰주지 않은거야...ㅠ

헤더를 맞춰주지 않을 경우

access_token=gho_W753V6bPs9...(생략)&scope=&token_type=bearer

파라미터 형식으로 전송됨 👉 Json형태가 아니기 때문에 변환 불가로 에러가 뜸

헤더를 맞춰주면

{"access_token":"gho_wWtTfdvJHu17L...(생락)","token_type":"bearer","scope":""}
profile
안녕 세계!

0개의 댓글