自定义选项不支持客户端
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();
我正在尝试通过 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();