无聊自己写了一个ucloud的SDK

为什么80%的码农都做不了架构师?>>>   hot3.png

import hashlib,requests,urllib

class ucloud:

    def __init__(self,pub,priv,param):

        self.pub = pub
        self.priv = priv
        self.url = "http://api.ucloud.cn/?"
        self.param = param

    def format_param(self):

        param = self.param
        param = "&".join(k.replace("_",".") + "=" + str(param[k]) for k in sorted(param.keys()))
        return param

    def signature(self):

        param = self.param
        items = param.items()
        items.sort()
        params_data = ""
        for key, value in items:
            params_data = params_data + str(key) + str(value)
        param = params_data + self.priv
        sign = hashlib.sha1()
        sign.update(param)
        signature = sign.hexdigest()
        return signature

    def reuqest_url(self):
        url = self.url+self.format_param()+'&Signature='+self.signature()
        return url

    def request(self,url):
        r = requests.get(url)
        return r.json()

 

调用方式

from Ucloud import ucloud


PublicKey = "mypubkey"
SecurityKey = "myprikey"
param = {                                       #参数
    "Region" : "cn-bj1",
    "Action" : "GetProjectList",
    "PublicKey" : PublicKey
    }
    api = ucloud(PublicKey,SecurityKey,param)    #生成验签后的url地址
    result = api.request(api.reuqest_url())      #请求,返回json

 

转载于:https://my.oschina.net/jastme/blog/906705

你可能感兴趣的:(无聊自己写了一个ucloud的SDK)