Phalcon Zircote / Swagger-php安全错误

时间:2018-05-25 09:02:55

标签: swagger phalcon swagger-ui php-7.2 swagger-php

我正在尝试使用Swagger-php在我正在处理的应用程序中为API创建文档。我想用JWT保护它,所以在我的ControllerBase中安装了一个SecurityScheme:

/** 
 * @SWG\SecurityScheme(
 *     securityDefinition="Bearer",
 *     bearerFormat="JWT",
 *     type="apiKey",
 *     name="Authorization",
 *     in="header"
 * )
 */

然后在我的控制器中我想用它

/**
 * @SWG\Get(
 *      path="/test",
 *      @SWG\Response(
 *          response="200",
 *          description="Returns test data"
 *      ),
 *     security={{"Bearer":{}}}
 * )
 */ 

它在我的Swagger UI上正确加载,但是当我尝试执行请求时,我收到了错误:

  

语法错误,意外令牌},靠近'}}

对于PHP解释器,Swagger的正确注释看起来不正确。我可以把它改成

security={{"Bearer":{''}}}

然后请求正在运行,但是当我重新加载Swagger UI时,请求不会显示在那里。

有人可以帮助我吗?

更新:我认为这是PHP解释器的问题我错了。使用Phalcon Annotations时出现问题。这是服务器返回的整个错误。

  

语法错误,意外令牌},靠近'}})'in   /var/www/api/api/app/modules/user/controllers/UserController.php on   第21行

0 [internal function]:
Phalcon\Annotations\Reader->parse('Api\Modules\Use...')
1 [internal function]: Phalcon\Annotations\Adapter->get('Api\Modules\Use...')
2 /var/www/api/api/app/library/ApiManager/ApiAnnotation.php(54): Phalcon\Annotations\Adapter->getMethod('Api\Modules\Use...',
'getAllUsersActi...')
3 /var/www/api/api/app/library/ApiManager/ApiAnnotation.php(41): Api\Library\ApiManager\ApiAnnotation->getFromActiveAction()
4 /var/www/api/api/app/library/AuthGuard/AuthGuard.php(23): Api\Library\ApiManager\ApiAnnotation->__construct()
5 /var/www/api/api/app/controllers/ControllerBase.php(37): Api\Library\AuthGuard\AuthGuard->__construct()
6 [internal function]: Api\Controllers\ControllerBase->initialize()
7 [internal function]: Phalcon\Dispatcher->dispatch()
8 /var/www/api/api/public/index.php(54): Phalcon\Mvc\Application->handle()
9 {main}

0 个答案:

没有答案