shell请求api,获取json返回值,做判断

1. shell如何请求api,获取到json返回值:https://www.cnblogs.com/pingguomang/p/18405011

2. shell如果解析json数据: https://www.cnblogs.com/pingguomang/p/18404996

3. shell的条件判断:

#定义 用户的id
user_id="199348" 
#1. 调用api-- 获取用户数据详细信息
response=$(curl -s "http://xx.xx.xx.xx:8088/api/getUserDetailObjByPid?id="$user_id)
#response='{"id": "199348", "name": "张山", "tel": "183xxxx","status":"success"}'
echo $response

#2. 解析返回的json对象数据 status_key
="status" status_value=$(echo $response | python -c 'import json,sys; data=json.load(sys.stdin); print(data["'$status_key'"])')

#3. 根据返回结果,做条件判断
if [ $status_value = "failed" ]; then echo "数据为None,没有这个id数据!" exit 0 else echo "数据不为None,存在这个id数据!" #4. 获取json返回值 name_key="name" tel_key="tel" name_value=$(echo $response | python -c 'import json,sys; data=json.load(sys.stdin); print(data["'$name_key'"])') tel_value=$(echo $response | python -c 'import json,sys; data=json.load(sys.stdin); print(data["'$tel_key'"])') echo "name value is :"${name_value} echo "tel value is :"${tel_value} fi

 

posted @ 2024-09-09 18:12  苹果芒  阅读(55)  评论(0编辑  收藏  举报