gpt4 book ai didi

php - 如何从 * PHP 或 bash 进行长轮询?

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:22:09 26 4
gpt4 key购买 nike

基本上,我正在构建面向 IoT 的应用程序。我创建了几个二进制文件来打开或关闭 Raspberry Pi 的引脚。我过去曾使用 PHP(在 Raspberry Pi 上运行)通过执行 bash 命令来运行这些程序,效果非常好,如下所示:

exec('sudo /home/pi/Projects/calelec/rpi/on');

但我现在需要做的是不断读取(长轮询)一个 API 服务,它会告诉我的 Raspberry pi 任何指令,然后执行类似于上面的命令。

我知道 cronjob 将是这项任务的理想选择(因此我不需要使用 PHP 部分),但我需要它有 0.3 秒的延迟。

我之前读过守护进程可以工作,但对此我几乎一无所知。所以我只需要指出正确/更好的方向。

最佳答案

这是一个在 bash 中使用无限循环的例子:

#!/bin/bash
while :
do
# Write your code below, you can interact with API's using curl
curl http://google.com

sleep 0.3 # You might need to adjust this, if the request takes more time to complete
done

将其保存为test.sh并赋予其可执行权限chmod +x test.sh并运行./test.sh

您可以通过按 CTRL+C 来停止它运行

此脚本将每 0.3 秒向 google.com 执行一次 GET 请求。您可以使用此循环编写自己的 curl 请求和命令,您希望每 0.3 秒运行一次。

你可以阅读curl man page here

关于php - 如何从 * PHP 或 bash 进行长轮询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41616205/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com