아무리해도 같네요.
액세스토큰을 다이렉트로 기록해봐도 같습니다.
다른 설정이 필요한지 조언 부탁드려요.,
url = 'https://kauth.kakao.com/oauth/token’
rest_api_key = 'rest_api_key’
redirect_uri = 'http://xxxxx.com’
authorize_code = ‘xxxxx’
data = {
‘grant_type’:‘authorization_code’,
‘client_id’:rest_api_key,
‘redirect_uri’:redirect_uri,
‘code’: authorize_code,
}
response = requests.post(url, data=data)
tokens = response.json()
print(tokens)
json 저장
import json
#1.
with open(r"H:\python\py_code\카카오\kakao_code.json",“w”) as fp:
json.dump(tokens, fp)
#2.
with open(“kakao_code.json”,“w”) as fp:
json.dump(tokens, fp)
해당 코드를 실행하니,
{‘access_token’: ‘액세스토큰코드’, ‘token_type’: ‘bearer’, ‘refresh_token’: ‘리플레시 토큰’, ‘expires_in’: 20599, ‘refresh_token_expires_in’: 5083999}
이렇게 잘 나옵니다.
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
import requests
import json
with open(“kakao_code.json”,“r”) as fp:
tokens = json.load(fp)
url="https://kapi.kakao.com/v2/api/talk/memo/default/send"
headers={“Authorization” : “Bearer” + tokens[“access_token”]}
data = {“template_object” : json.dumps({ “object_type” : “text”, “text” : “하나의 첫 카카오톡 메시지입니다.”, “link” : {“web_url” : “www.naver.com” }})}
response = requests.post(url, headers=headers, data=data)
response.status_code
if response.json().get(‘result_code’) == 0:
print(‘메시지를 성공적으로 보냈습니다.’)
else:
print('메시지를 성공적으로 보내지 못했습니다. 오류메시지 : ’ + str(response.json()))
위의 소스를 실행하니
메시지를 성공적으로 보내지 못했습니다. 오류메시지 : {‘msg’: ‘access token should not be null or empty’, ‘code’: -401}
PS H:\python\py_code>
이렇게 나옵니다.
401에러코드를 찾아보니,
인증오류(주로 사용자 토큰과 관련)
해당 리소스에 유효한 인증 자격 증명이 없어 요청에 실패한 상태입니다.
이렇게 나옵니다.