自定义选项不支持客户端

Client is not supported for custom options

我正在尝试通过 symfony 6 使用 ClientBuilder 的 Elasticsearch。我收到以下错误

The HTTP client Symfony\Component\HttpClient\Psr18Client is not supported for custom options

这是我试过的代码。我在 laravel 中有相同的代码行。

$hosts = ['https://localhost:9200'];
$client = ClientBuilder::create()
    ->setHosts($hosts)
    ->setSSLVerification(false)
    ->setBasicAuthentication('elastic', 'password')
    ->build();

只是 运行 进入 Laravel 9 应用程序中的相同问题(以及程序包中的其他一些错误)。

一定要手动设置客户端,否则它会使用\Http\Discovery\Psr18ClientDiscovery找到扩展所需接口\Psr\Http\Client\ClientInterface的第一个class。在我们的例子中是 Symfony\Component\HttpClient\Psr18Client,尚不支持(参见 https://github.com/elastic/elasticsearch-php/issues/990)。

$hosts = ['https://localhost:9200'];

$client = ClientBuilder::create()
    ->setHttpClient(new \GuzzleHttp\Client)
    ->setHosts($hosts)
    ->setSSLVerification(false)
    ->setBasicAuthentication('elastic', 'password')
    ->build();