我在python中列出了gke-firewall。我需要发送防火墙列表作为对Python API的响应,以便其他API可以使用它。
我的Python API执行:
Calling API_1
|
|___ ...Executing API_1...
Calling API_2
|
|___ ...Executing API_2...
<list the firewalls and returning the list in JSON DataFormat as API response.>
...Returning response to API_1...
...Executing API_1...<By using firewall list>
...Executed Successfully...
我能够列出数据,但是我不知道如何将其作为JSON响应发送。有可能吗?或者还有其他方法可以做到这一点吗?
**Executing API_2**
def firewall():
list_firewall = []
status = "True"
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect(hostname = HOSTNAME,username = USERNAME,key_filename = FILENAME)
cmd = 'gcloud compute firewall-rules list --project <project-name> --filter="name~gke-<your-cluster-name>-[0-9a-z]*"'
stdin,stdout,stderr = ssh.exec_command(cmd)
for line in (stdout.read().splitlines()):
data = line.split()[0]
list_firewall.append(data)
print(list_firewall)
ssh.close()
#return .. <Return list_firewall and status as json data>
如何将列表作为JSON数据作为API响应返回?有什么方法可以做。
谢谢。
答案 0 :(得分:0)
使用JSON 1,Foo "bar",10.5
将您创建的列表的内容转储为JSON字符串:
dumps
如果您需要一个json object ,因为API框架会处理到字符串的转换,则只需返回列表本身即可。