【问题标题】:Swagger doctrine/zircote bearer Authorization codeSwagger 学说/zircote bearer 授权码
【发布时间】:2017-07-10 18:58:17
【问题描述】:

我正在尝试使用 swagger zircote 创建 swagger ui json。 对于我的应用程序,我使用 JWT,并且我的 json 中需要以下招摇代码:

"securityDefinitions": {
    "Bearer": {
      "in": "header",
      "type": "accessToken",
      "name": "Authorization"
    }
},

但我不知道如何使用 swaggers zircote 创建该代码。我试过以下代码:

 * @SWG\Swagger(
 *     schemes={"https"},
 *     @SWG\SecurityDefinitions(
 *         bearer={
 *             type="apiKey",
 *             name="Authorization",
 *             in="header"
 *         }
 *     ),

但这会导致以下错误:

注解“@Swagger\Annotations\SecurityDefinitions”在 第 2 行的 .\index.php 不存在,或无法自动加载。

有人可以帮助我吗,我找不到任何关于此的好的文档,也许是具体的,但我希望有人可以帮助我。

谢谢!

这个也在github上发布...https://github.com/zircote/swagger-php/issues/366

【问题讨论】:

    标签: php doctrine swagger jwt bearer-token


    【解决方案1】:

    使用@SWG\SecurityScheme 而不是@SWG\SecurityDefinitions。

     * @SWG\Swagger(
     *     schemes={"https"},
     *     @SWG\SecurityScheme(
     *         securityDefinition="Bearer",
     *         type="apiKey",
     *         name="Authorization",
     *         in="header"
     *     ),
    

    可以在vendor/zircote/swagger-php/src/Annotations中找到可用注释列表

    【讨论】:

    • 谢谢!尤其是注释列表 2,我没想到会有!
    • 对不起,我必须把这个放在这里,但我找不到在我的新帖子中提及你的方式,但也许你有这个答案:stackoverflow.com/questions/42527952/…
    • 只需用swagger-php标记问题,我就会收到通知。
    • 那么我如何实际使用每个端点的这个 SecurityScheme 呢?在 Swagger UI 中,我看到 Authorize 按钮出现,但令牌当前没有发送到我的任何端点:(
    • 谢谢!这对我有用。现在我如何在 laravel 控制器端使用它?我的意思是说我只需要发送令牌来注销用户。我该怎么做?
    猜你喜欢
    • 2017-09-12
    • 2016-12-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-07-20
    相关资源
    最近更新 更多