簡體   English   中英

curl 獲取響應狀態碼並評估

[英]curl to get response status code and evaluate

嘗試獲取 curl 發布請求的狀態代碼並使用 if 條件檢查狀態代碼 200 與否

for ((i = 1; i <= $max; i++)); do
  id=$((id_range + $i))

  code= $(curl -s -w "%{http_code}" -o /dev/stderr  -X POST $URL -H "Authorization: Basic $AUTH" -H "Content-Type: application/json"  -H "Accept: application/json" -d '{
    "id": "'$id'",
    "name": "tom",    
    "status": "active",    
     }'
     )

    if [ "$code" = "200" ]
    then
      echo "Employee added : " $code
    else
      echo "Employee not added : " $code
    fi

  
done

但這對我不起作用,沒有得到狀態碼

如果我不使用 go 獲取狀態代碼 curl 請求有效

for ((i = 1; i <= $max; i++)); do
  id=$((id_range + $i))
  curl   -X POST $URL -H "Authorization: Basic $AUTH" -H "Content-Type: application/json"  -H 
  "Accept: application/json" -d '{
  "id": "'$id'",
  "name": "tom",    
  "status": "active",    
 }'

獲取狀態碼的任何其他更好的選擇

太空——最后的邊界。 =后面有一個空格,它不應該在那里:

code= $(curl -s -w "%{http_code}" ...)

請注意,shell 在許多地方都對空格敏感,變量賦值就是其中之一。 語法是NAME=[VALUE]

暫無
暫無

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

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