所有,我是Powershell的新手,尝试使用一个简单的Powershell脚本来调用REST API并获取值。
情况是,使用powershell将触发POST请求并获取响应值,并将该值用作另一个GET API请求中的参数。
POST:
$Params = @{"id"=38}
$headers = @{
Authorization="Bearer XXXXXX"
$getrunid=Invoke-RestMethod -Method Post -Uri https://abctech.com/api/2.0/run
-Body ($Params|ConvertTo-Json) -ContentType application/json -Headers
$headers
响应将为2值。例如,id = 10,queue = 15
我现在只接受id响应。
获取:
$getrunidvalue=$getrunid.id
$getcheck=Invoke-RestMethod -Method Get -Uri
https://abctect.com/api/2.0/jobs/runs/get?id=$getrunidvalue -ContentType
application/json -Headers $headers
echo $getcheck
结果如下。
id1 : 38
run_id : 1
number_in_job : 6
original_attempt_run_id : 217
state : @{life_cycle_state=TERMINATED;
result_state=SUCCESS; state_message=}
task : @{notebook_task=}
从此结果中,我需要获取result_state的值。
我没有找到有关此操作的想法,有人可以帮忙吗。
谢谢
预期结果将为result_state成功或失败。
答案 0 :(得分:1)
看起来R.java
是一个哈希表,其中包含要检索的条目state
。您可以使用:
result_state