import requests
class dingding():
#獲取釘釘的access_token
def ding_get_token(self):
url=DINGURL+'/gettoken'
param ={"appkey":APPKEY,"appsecret":APPSECRET}
try:
res = requests.get(url=url, params = param, timeout=10)
if res.status_code == 200:
text = json.loads(res.text)
except Exception as e:
text ={"errmsg":e, "errcode":9999}
return text
#獲取釘釘的用戶userid
def ding_get_userid(self, code):
url = DINGURL + '/user/getuserinfo'
token = self.ding_get_token()
if token.get('errcode') == 0:
access_token =token.get('access_token')
param = {"access_token":access_token, "code":code}
try:
res = requests.get(url=url, params = param, timeout=10)
if res.status_code == 200:
text = json.loads(res.text)
text.update({'access_token': access_token})
except Exception as e:
text = {"errmsg":e, "errcode":9999}
else:
text = {"errmsg":token.get('errmsg')}
return text
#獲取用戶信息
def ding_get_userinfo(self,code):
url = DINGURL + '/user/get'
usermsg = self.ding_get_userid(code)
if usermsg.get('errcode') == 0:
access_token =usermsg.get('access_token')
userid= usermsg.get('userid')
param = {"access_token":access_token,"userid":userid}
try:
res = requests.get(url=url, params = param, timeout=10)
if res.status_code == 200:
text = json.loads(res.text)
except Exception as e:
text = {"errmsg":e, "errcode":9999}
else:
text = {"errmsg":usermsg.get('errmsg'),"errcode":usermsg.get('errcode')}
return text
#傳入code,換取用戶信息
userinfo = self.ding_get_userinfo(code)