shell 请求http get api,获取返回值

在Shell脚本中,你可以使用curlwget来发送HTTP GET请求并获取返回值。

以下是使用curl的示例:

#!/bin/bash
 
# API URL无参数时:
URL="http://example.com/api/data"
# API URL有参数时:
id=119
URL="
http://example.com/api/data?id="+${id}
 
# 发送GET请求并存储响应
response=$(curl -s $URL)
 
# 输出响应
echo $response

确保你的系统中安装了curl。如果需要处理更复杂的HTTP请求(例如带有headers的请求或需要认证),curl提供了许多选项来满足这些需求。

如果你更喜欢使用wget,可以这样做:

#!/bin/bash
 
# API URL
URL="http://example.com/api/data"
 
# 使用wget发送请求并将输出保存到文件
filename=$(mktemp)
wget -O $filename $URL
 
# 读取文件并输出内容
response=$(cat $filename)
echo $response
 
# 清理临时文件
rm $filename

在这两个示例中,-s(或--silent)选项用于静默模式,这意味着curl在执行时不会输出进度和错误信息。而wget则将输出保存到一个临时文件中,然后从文件中读取内容。

posted @ 2024-09-09 17:54  苹果芒  阅读(202)  评论(0编辑  收藏  举报