gpt4 book ai didi

php - 可以从 REDIS 订阅返回响应吗?

转载 作者:IT王子 更新时间:2023-10-29 06:10:59 29 4
gpt4 key购买 nike

我使用 predis,我想订阅 PHP channel 并等待 30 秒。如果在 channel 没有收到任何消息,返回 json 响应。或者如果 channel 中的消息存在,也返回响应并退出。

例如,我希望我的 Redis::subscribe 返回 $message 并且我可以返回响应。

我在 Laravel 的 Controller 中有一些代码:

 Redis::subscribe(['PushAuthChanel'], function($message) {


echo $message; // Nothing happens
return response()->json($c, 200); // Nothing happens
//return $message; // Nothing happens too

});

为什么 Redis::subscribe 不能返回 $message?但它会像这样返回退出代码:

Redis::subscribe(['PushAuthChanel'], function($message) {


return exit(0); //will work
dd($message); //will work fine

});

最佳答案

还在等答案吗?反正。您可以这样更改代码:

    $pubsub = Redis::pubSubLoop();
$pubsub->subscribe('channel-name');
foreach ($pubsub as $message) {
print_r ($message);
// You can unsubscribe any time you want by using this function:
// $pubsub->unsubscribe();
}

关于php - 可以从 REDIS 订阅返回响应吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44998381/

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