七牛云
This commit is contained in:
31
vendor/qiniu/php-sdk/src/Qiniu/Http/Middleware/Middleware.php
vendored
Normal file
31
vendor/qiniu/php-sdk/src/Qiniu/Http/Middleware/Middleware.php
vendored
Normal file
@@ -0,0 +1,31 @@
|
||||
<?php
|
||||
namespace Qiniu\Http\Middleware;
|
||||
|
||||
use Qiniu\Http\Request;
|
||||
use Qiniu\Http\Response;
|
||||
|
||||
interface Middleware
|
||||
{
|
||||
/**
|
||||
* @param Request $request
|
||||
* @param callable(Request): Response $next
|
||||
* @return Response
|
||||
*/
|
||||
public function send($request, $next);
|
||||
}
|
||||
|
||||
/**
|
||||
* @param array<Middleware> $middlewares
|
||||
* @param callable(Request): Response $handler
|
||||
* @return callable(Request): Response
|
||||
*/
|
||||
function compose($middlewares, $handler)
|
||||
{
|
||||
$next = $handler;
|
||||
foreach (array_reverse($middlewares) as $middleware) {
|
||||
$next = function ($request) use ($middleware, $next) {
|
||||
return $middleware->send($request, $next);
|
||||
};
|
||||
}
|
||||
return $next;
|
||||
}
|
||||
Reference in New Issue
Block a user