簡體   English   中英

檢查 curl 響應是否為空

[英]Check if curl response is empty

我有一個簡單的 shell 腳本,我正在執行 cURL 並根據響應是否為空或不想記錄標志。 我試過 null 檢查,但它仍然是其他部分。

腳本:test.sh

    RESP=`curl  -m 600 -X POST -H "Accept: application/json" ......`  #curl response
    #if [ -z "$RESP" ] && echo "Empty"
    if [ ${#RESP[@]} -eq 0 ];
    then
     echo "APIName=Test1Api,  TicketRaised=N"
    else
     echo "RESPONSE is NOT NULL"
     echo -e "APIName=Test1Api, HTTP_STATUS=$HTTP_STATUS, totalTime=$TIME_TAKEN, Response=$RESP, TicketRaised=Y"
    fi
    
    

Output > (即使響應即“RESP”如果為空,則進入其他部分)

RESPONSE is NOT NULL
APIName=Test1Api, HTTP_STATUS=[], totalTime=545, Response=[], TicketRaised=Y

我從你的回答中推斷出你所說的空答案是空的 JASON 字符串[]

所以試試:

RESP=`curl  -m 600 -X POST -H "Accept: application/json" ......`  #curl response
if [ $RESP = "[]" ]
then
  echo "APIName=Test1Api,  TicketRaised=N"
else
  echo "RESPONSE is NOT NULL"
  echo -e "APIName=Test1Api, HTTP_STATUS=$HTTP_STATUS, totalTime=$TIME_TAKEN, Response=$RESP, TicketRaised=Y"
fi

確保[]之后沒有換行符。 否則,您將不得不調整代碼。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM