参照官网的api文档写了个python的生成signature的函数,已经测试通过,发上来个后续有需要的人做个参考。刚学python写的很烂。勿喷。
把xxxxx换成你的主控地址
把 you token换成你的token就行了
=====================================
#-*- coding: utf-8 -*-
#Author: YangQing time:2021/01/27
#nokvm api
import requests
import json
import time
import random
import string
import hashlib,base64
def signature(token):
"""
生成signature
"""
times = round(int(time.time())) #生成时间戳
randmo = ''.join(random.sample(string.ascii_letters + string.digits, 8)) #生成随机数
data = str(times) + str(token) + str(randmo) #拼接参数
data = hashlib.md5(data.encode()) #加密1
data = data.hexdigest() #加密2
data = data.upper() # 把所有字符中的小写字母转换成大写字
url = 'http://xxxxx/api/area?time={}&random={}&signature={}'.format(times,randmo,data) #生成获取数据中心的url
print(url) #打印url
print(json.loads(requests.get(url).text)) #打印请求结果
url2 = 'http://xxxxx/api/virtual/8?time={}&random={}&signature={}'.format(times,randmo,data) #生成获取8号 云主机的详情的url
print(requests.get(url2).text) #打印结果
if __name__ == "__main__":
signature('you token')