47 lines
1.5 KiB
Plaintext
47 lines
1.5 KiB
Plaintext
async def get_tokenid(ns={}):
|
|
userid = await get_user()
|
|
db = DBPools()
|
|
async with db.sqlorContext('kboss') as sor:
|
|
baidu_user_id_li = await sor.R('baidu_users', {'user_id': userid, 'del_flg': '0'})
|
|
if baidu_user_id_li:
|
|
baidu_user_id = baidu_user_id_li[0]['baidu_id']
|
|
else:
|
|
return {
|
|
'status': False,
|
|
'msg': '没有找到对应的百度用户'
|
|
}
|
|
|
|
method = "POST"
|
|
url = 'https://sts.bj.baidubce.com/v1/signinSecurityToken?userId=%s' % baidu_user_id
|
|
|
|
x_bce_date = time.gmtime()
|
|
x_bce_date = time.strftime('%Y-%m-%dT%H:%M:%SZ', x_bce_date)
|
|
|
|
header = {
|
|
"Host": "sts.bj.baidubce.com",
|
|
"Content-Type": "application/json",
|
|
'x_bce_date': x_bce_date
|
|
}
|
|
header2 = x_bce_date
|
|
header = await get_auth_header(method=method, url=url, header=header)
|
|
async with aiohttp_client.request(
|
|
method=method,
|
|
url=url,
|
|
headers=header) as res:
|
|
data_token = await res.json()
|
|
if data_token.get('sessionToken'):
|
|
return {
|
|
'status': True,
|
|
'msg': 'get token success',
|
|
'data': data_token.get('sessionToken')
|
|
}
|
|
else:
|
|
return {
|
|
'status': False,
|
|
'msg': 'get token failed, %s' % data_token,
|
|
'header': header,
|
|
'header2': header2
|
|
}
|
|
|
|
ret = await get_tokenid(params_kw)
|
|
return ret |