Swagger基本身份验证在php客户端上失败

问题描述 投票:2回答:1

[当我尝试使用Yaml文件中生成的php客户端时,它似乎不起作用。即使填写了身份验证的配置,我仍然收到身份验证错误。但是,当我用基本的auth选项替换生成的API中的options变量时,它确实起作用。参见下面的代码:

public function getLiveWegvakkenDataWithHttpInfo()
    {
        $returnType = '\Swagger\Client\Model\Wegvak[]';
        $request = $this->getLiveWegvakkenDataRequest();

    try {
        $options = $this->createHttpClientOption();
        try {
            $response = $this->client->send($request, $options);
        } catch (RequestException $e) {
            throw new ApiException(
                "[{$e->getCode()}] {$e->getMessage()}",
                $e->getCode(),
                $e->getResponse() ? $e->getResponse()->getHeaders() : null,
                $e->getResponse() ? $e->getResponse()->getBody()->getContents() : null
            );
        }

上面的代码不起作用,但是当我用这个替换$options时:

[
    'auth' => [
         'username',
         'password',
]]

确实有效。有人可以解释我做错了吗?因为对我来说标准的实现不起作用似乎很奇怪。

php swagger guzzle
1个回答
0
投票

我最后发现我的Yaml文件不包含此文件:https://swagger.io/docs/specification/authentication/basic-authentication/

将其添加到我的yaml文件中(当然还要填充配置之后),它可以正常工作

© www.soinside.com 2019 - 2024. All rights reserved.