这是因为当您将 json 从 postman 传递给 runbook 时,runbook 会将整个 json 字符串作为一个参数,您可以使用它print(sys.argv[1])
来检查此行为。输出如下:
在您的情况下,有一种解决方法。得到输入参数后,得到这个部分RequestBody:
,这个:{"resource_group_name":"vv1","vm_name":"vv2"},这是一个json字符串然后你可以解析json字符串,得到你的值想。
示例代码如下:
import sys
import json
#view the input parameter
print(sys.argv[1])
input_str = sys.argv[1]
# use "1" in index() method, to ignore the first { symbol in the input parameter
start_str = input_str.index("{",1)
end_str = input_str.index("}",1)
str = input_str[start_str:end_str+1]
text = json.loads(str)#parse the json string
#check the value
print("resource_group_name: "+text["resource_group_name"])
print("vm_name: "+text["vm_name"])
测试结果如下: