windows执行脚本
@echo off
:start
setlocal

:: 设置API端点
set API_ENDPOINT=http://localhost:3000/demo
:: 设置轮询间隔(秒)
set INTERVAL=1

:loop
:: 发送GET请求并将响应保存到变量中
for /f %%i in ('curl -s %API_ENDPOINT%') do set response=%%i

:: 检查响应是否为true
if "%response%"=="true" (
    echo API返回了true,准备执行操作...
    rem 在这里执行您想要执行的操作
    goto endloop
) else (
    echo API没有返回true,等待 %INTERVAL% 秒后继续轮询。
    timeout /t %INTERVAL% >nul
    goto loop
)

:endloop
echo 循环结束,继续执行其他操作...
rem 在这里执行轮询之后要执行的其他操作

endlocal
timeout /t 5 >nul
goto start
liunx执行脚本
#!/bin/bash

# 无限循环
while true; do
    # 设置API端点
    API_ENDPOINT="http://localhost:3000/demo"
    # 设置轮询间隔(秒)
    INTERVAL=1

    # 发送GET请求并将响应保存到变量中
    response=$(curl -s $API_ENDPOINT)

    # 检查响应是否为true
    if [ "$response" = "true" ]; then
        echo "API返回了true,准备执行操作..."
        # 在这里执行您想要执行的操作
        echo "循环结束,继续执行其他操作..."
        # 在这里执行轮询之后要执行的其他操作

        sleep 5  # 等待5秒
        echo "重新执行"
        continue
    else
        echo "API没有返回true,等待 $INTERVAL 秒后继续轮询。"
        sleep $INTERVAL
    fi
done
最后修改:2024 年 04 月 11 日
如果觉得我的文章对你有用,请随意赞赏