Esempio n. 1
0
File: curl.py Progetto: webmiss/base
 def PostJson(url: str, data: dict, header: dict = {}):
     # 请求头
     param = Util.ArrayMerge(
         {
             'Content-Type': 'application/json; charset=utf-8',  #JSON方式
         },
         header)
     # 数据
     json = Util.JsonEncode(data) if len(data) > 0 else '{}'
     # 发送
     res = requests.post(url, data=json, headers=param).text
     return Util.JsonDecode(res) if len(res) > 0 else None
Esempio n. 2
0
 def UserSig(userId: any, expire: int = 0):
     # 配置
     cfg = Tencent.TRTC()
     if expire == 0: expire = cfg['ExpireTime']
     # 参数
     param = {
         'TLS.ver': '2.0',
         'TLS.identifier': str(userId),
         'TLS.sdkappid': str(cfg['SDKAppID']),
         'TLS.expire': str(expire),
         'TLS.time': str(Util.Time()),
     }
     # 签名
     param['TLS.sig'] = Signature.__hmacsha256(param, cfg['SecretKey'])
     # 压缩
     data = Base64.Compress(Util.JsonEncode(param))
     return Base64.UrlEncode(data)
Esempio n. 3
0
 def V3Header(data: dict = {}):
     # 数据
     json = Util.JsonEncode(data) if len(data) > 0 else '{}'
     HashedRequestPayload = Hash.Sha256(json)
     # 请求串
     CanonicalRequest = Signature.RequestMethod+"\n"\
     + Signature.CanonicalURI+"\n"\
     + Signature.CanonicalQueryString+"\n"\
     + 'content-type:'+Signature.ContentType+"\n"+'host:'+Signature.Host+"\n"+"\n"\
     + Signature.SignedHeaders+"\n"\
     + HashedRequestPayload
     # 字符串
     timeStamp = str(Util.Time())
     date = datetime.utcfromtimestamp(float(timeStamp)).strftime("%Y-%m-%d")
     CredentialScope = date + '/' + Signature.Service + '/tc3_request'
     HashedCanonicalRequest = Hash.Sha256(CanonicalRequest)
     StringToSign = Signature.Algorithm+"\n"\
     + timeStamp+"\n"\
     + CredentialScope+"\n"\
     + HashedCanonicalRequest
     # 计算签名
     cfg = Tencent.CAPI()
     SecretDate = Hash.HmacSha256(date,
                                  str.encode("TC3" + cfg['SecretKey']))
     SecretService = Hash.HmacSha256(Signature.Service, SecretDate)
     SecretSigning = Hash.HmacSha256('tc3_request', SecretService)
     Sign = Hash.HexEncode(Hash.HmacSha256(StringToSign, SecretSigning))
     # Authorization
     Authorization = Signature.Algorithm+' '\
     + 'Credential='+cfg['SecretId']+'/'+CredentialScope+', '\
     + 'SignedHeaders='+Signature.SignedHeaders+', '\
     + 'Signature='+Sign
     # 请求头
     header = {
         'Authorization': Authorization,
         'Content-Type': Signature.ContentType,
         'Host': Signature.Host,
         'X-TC-Action': Signature.Action,
         'X-TC-Version': Signature.Version,
         'X-TC-Timestamp': timeStamp,
         'X-TC-Region': Signature.Region,
     }
     return header
Esempio n. 4
0
 def Log(data):
     text = Util.JsonEncode({'type': 'log', 'data': data})
     Logs.Writer(text)
Esempio n. 5
0
 def Error(data):
     text = Util.JsonEncode({'type': 'error', 'data': data})
     Logs.Writer(text)
Esempio n. 6
0
 def Action(data):
     text = Util.JsonEncode({'type': 'action', 'data': data})
     Logs.Writer(text)
Esempio n. 7
0
 def Info(data):
     text = Util.JsonEncode({'type': 'info', 'data': data})
     Logs.Writer(text)