feat: 开放API授权相关
This commit is contained in:
31
app/openapi/middleware/Auth.php
Normal file
31
app/openapi/middleware/Auth.php
Normal file
@@ -0,0 +1,31 @@
|
||||
<?php
|
||||
declare (strict_types = 1);
|
||||
|
||||
namespace app\openapi\middleware;
|
||||
|
||||
use OAuth2\OAuth2;
|
||||
use OAuth2\OAuth2ServerException;
|
||||
use oauth\OAuthStorage;
|
||||
|
||||
class Auth
|
||||
{
|
||||
/**
|
||||
* 处理请求
|
||||
*
|
||||
* @param \think\Request $request
|
||||
* @param \Closure $next
|
||||
* @return Response
|
||||
*/
|
||||
public function handle($request, \Closure $next)
|
||||
{
|
||||
try {
|
||||
$oauth = new OAuth2(new OAuthStorage);
|
||||
$token = $oauth->getBearerToken();
|
||||
$oauth->verifyAccessToken($token);
|
||||
} catch (OAuth2ServerException $e) {
|
||||
return error('Unauthorized', $e->sendHttpResponse(), 401);
|
||||
}
|
||||
|
||||
return $next($request);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user