http - CMD/Batch - cURL HTTP 响应代码的 IF 条件

标签 http batch-file curl

在批处理文件中,是否可以运行 cURL 命令并根据返回的 HTTP 状态代码执行不同的操作?像这样的事情:

curl -G "https://httpbin.org/status/404" --fail --output "output.txt" || echo Error

IF %variable% = 200 do (
echo Success
)

IF %variable% = 404 do (
echo Not Found
)

IF %variable% = 503 do (
echo Not Available
)

如何获取 cURL 的 HTTP 响应代码作为 %variable% 来进行 IF 检查?谢谢。

最佳答案

我编写了这段运行良好的代码:

for /f "tokens=*" %%a in ('curl -G "https://httpbin.org/status/404" -s --write-out "%%{http_code}" --fail --output "output.txt"') do set httpcode=%%a

if %httpcode% == 404 @echo Not Found

关于http - CMD/Batch - cURL HTTP 响应代码的 IF 条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59741113/

相关文章:

使用 Tornado 的 SaltStack 上 8 上的 SSL 错误

c++ - 使用 Winsock 的简单 HTTP 获取

windows - bat 文件 : Command to change only folders attributes not recursively

windows - 在 Windows 中通过 bat 命令运行应用程序

windows - 如何在 Jenkins 构建批处理命令中在 Windows Server 上使用 Angular CLI

php - 使用 Curl 或其他方式检索完全呈现的页面?

forms - 如何从 HTML 表单调用 RESTful 服务?

http - 扩展(十进制,例如 400.1、401.4 等)HTTP 状态代码从何而来?

http - 为什么我的上传进度条在传输完成之前就结束了?

php - 在 http 链接上上传 xml 文件时 curl 出现 `PUT` 错误