ops_interface/ops/ss_virtual_create.py
2019-10-15 14:09:44 +08:00

57 lines
1.8 KiB
Python

# -*- coding: utf-8 -*-
import json
import requests
import sys
from urllib.parse import unquote, quote, urlencode
import pdb
def my_quote(data):
if isinstance(data, dict):
return urlencode(data)
elif isinstance(data, str):
return quote(data)
class SS_Virtual_command:
def __init__(self):
self.ss_virtual_url = "https://10.10.3.17:8992/v1/ta/meta/prop/virtual/dict/create"
self.method = "post"
def upload(self, filename):
projectId = int(19)
createParam = {"commonHeader": {"projectId": 19},
"mainColumn": {"property": {"columnName": "gameid", "tableType": 0}},
"columns": [{"property": {"columnName": "gameid", "columnDesc": "主键ID", "selectType": "number"}},
{"property": {"columnName": "gameid_china", "columnDesc": "china映射", "selectType": "string"}}]}
loginName = "root"
password = "kingsome2016"
pdb.set_trace()
body = {"projectId": projectId, "createParam": createParam, "loginName": loginName, "password": password}
quote_body = my_quote(body)
cmd = f"curl --header 'Accept: application/json' --form 'file=@{filename} {self.ss_virtual_url}?{quote_body}"
print(cmd)
# r = requests.post(url=self.ss_virtual_url, header="Accept: application/json", files=filename, data=quote_body)
# if r.status_code == requests.codes.ok:
# print(f"upload success,return={r.content}")
# return True
# else:
# print(f"upload failed,return={r.content}")
# return False
def main():
if len(sys.argv) != 2:
raise Exception("PLS input filename which need upload!")
filename = sys.argv[1]
ss = SS_Virtual_command()
ss.upload(filename)
if __name__ == "__main__":
main()