[英]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.