cURL错误18:关闭传输,剩余未读数据

时间:2019-03-30 09:54:25

标签: php laravel curl guzzle

我正在使用Laravel 5.7和Guzzle的最新版本。

我正在尝试向外部网站发出批量池请求。到目前为止,它一直运行良好,但是我认为,由于要获取的数据越来越大,因此在恰好2分钟的等待时间之后,我开始收到这些CURL错误:

cURL error 18: transfer closed with outstanding read data remaining

我使用Guzzle的并发池请求:

new Pool($client, $requests($urls, $headers), ...)

我要发送的标头仅包含Authorization标头,未指定其他任何内容。

我正在Goolge上寻找解决方案,但似乎找不到与该问题完全相关的东西。

我发现它可能是Content-length,但是我没有设置任何内容长度。也许是我需要设置一个Keep-alive

有人知道这可能是什么问题吗?如果您需要更多信息,请在此帖子下方的评论中提出要求。

1 个答案:

答案 0 :(得分:1)

我有同样的问题。我改变了,

    $double_games_money = DB::table('bets_double')
    ->where('user_id', $this->user->id)
    ->whereExists(function ($query) {
        $query
            ->selectRaw(1)
            ->from('game_double')
            ->whereRaw('game_double.id = bets_double.game_id')
            ->whereRaw('game_double.number = bets_double.color');
    })

并运行命令

MAIL_ENCRYPTION=null to 
MAIL_ENCRYPTION=tls