gpt4 book ai didi

php - Guzzle 异步请求不起作用

转载 作者:可可西里 更新时间:2023-10-31 23:30:42 26 4
gpt4 key购买 nike

我正在使用 Guzzle我是通过 composer 安装的,但没有做一些相对简单的事情。

我可能误解了 documentation但基本上我想要做的是向服务器运行 POST 请求并继续执行代码而不等待响应。这是我所拥有的:

$client = new \GuzzleHttp\Client(/*baseUrl, and auth credentials here*/);
$client->post('runtime/process-instances', [
'future'=>true,
'json'=> $data // is an array
]);
die("I'm done with the call");

现在假设 runtime/process-instances 运行了大约 500 万,我不会在这 500 万之前收到 die 消息...相反,我希望在消息 < strong>发送到服务器。

现在我无法访问服务器,所以我无法在运行执行之前让服务器做出响应。我只需要忽略响应即可。

感谢任何帮助。

我尝试过的事情:

$client->post(/*blabla*/)->then(function ($response) {});

最佳答案

在 Guzzle 中发送请求并立即退出是不可能的。异步请求需要您等待它们完成。如果不这样做,请求将不会被发送。

另请注意,您使用的是 post 而不是 postAsync,前者是同步(阻塞)请求。要异步发送 post 请求,请使用后者。在您的代码示例中,通过将 post 更改为 postAsync,该过程将在请求完成之前退出,但目标不会收到该请求。

关于php - Guzzle 异步请求不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27494729/

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