码迷,mamicode.com
首页 > 其他好文 > 详细

Swagger Authorization:bearer <token>

时间:2018-05-18 13:47:54      阅读:335      评论:0      收藏:0      [点我收藏+]

标签:tps   generate   sum   scheme   cat   false   nat   group   param   

1、添加如下代码

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

2、在需要认证的接口添加如下代码

   /**
    *
    * @SWG\Get(
    *     path="api/user/info",
    *     tags={"User"},
    *     summary="User Info",
    *     description="Get User Info",
    *     security={
    *          {
    *              "Bearer":{}
    *          }
    *      },
    *     @SWG\Response(
    *          response="200",
    *          description="请求成功",
    *     )
    * )
    *
    */

3、创建中间件

class SwaggerFix
{
    /**
     * Handle an incoming request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Closure  $next
     * @return mixed
     */
    public function handle($request, Closure $next)
    {
        if (strpos($request->headers->get("Authorization"),"Bearer ") === false) {
            $request->headers->set("Authorization","Bearer ".$request->headers->get("Authorization"));
        }
        return $next($request);
    }
}

4、在Kernel.php添加中间件

protected $routeMiddleware = [
    //最好放在第一个位置
    ‘swfix‘ => \App\Http\Middleware\SwaggerFix::class,
]

5、在路由文件中设置此中间件

$api->group([ ‘middleware‘ => [‘api.auth‘,‘swfix‘] ], function ($api) {

}

6、生成API文档
用的laravel框架,只需执行php artisan l5-swagger:generate方法即可

7、打开本地配置的Api文档地址,如:127.0.0.1/api/documentation
技术分享图片

技术分享图片

传送门

Bearer Authentication
oauth2 + passport = Bearer
Authorization:Bearer

Swagger Authorization:bearer <token>

标签:tps   generate   sum   scheme   cat   false   nat   group   param   

原文地址:https://www.cnblogs.com/littleBit/p/9055455.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!