async def create_eip(ns={}): """ :param ns: :return: """ if ns.get('Description'): ns['Description'] = ns['orgid'] + '0_____0' + ns.get('Description') else: ns['Description'] = ns['orgid'] + '0_____0' + 'Default' import aiohttp NETWORK_URL = 'http://cdsapi.capitalonline.net/vpc' action = 'CreateEIP' method = "POST" param = {} url = get_signature(action, method, NETWORK_URL, param=param) body = { "RegionCode": ns.get('RegionCode'), "AvailableZoneId": ns.get('AvailableZoneId'), # 边缘节点必传 "BandwidthType": ns.get('BandwidthType'), "BillScheme": ns.get('BillScheme'), "Qos": int(ns['Qos']), "Size": int(ns['Size']), "Description": ns.get('Description'), "SubjectId": int(ns.get('SubjectId')) if ns.get('SubjectId') else None } async with aiohttp.ClientSession() as session: async with session.request(method, url, json=body) as response: resp = await response.text() result = json.loads(resp) if result['Code'] == 'Success': result['status'] = True result.pop('Code') result['data'] = result.pop('Data') result['msg'] = result.pop('Message') else: result['status'] = False result['msg'] = result.pop('Message') return result ret = await create_eip(params_kw) return ret