改名
This commit is contained in:
@@ -6,7 +6,7 @@ namespace HttpServer\Route;
|
||||
|
||||
/**
|
||||
* Class Any
|
||||
* @package BeReborn\Route
|
||||
* @package Snowflake\Snowflake\Route
|
||||
*/
|
||||
class Any
|
||||
{
|
||||
|
||||
@@ -4,13 +4,15 @@
|
||||
namespace HttpServer\Route;
|
||||
|
||||
|
||||
use HttpServer\Http\Context;
|
||||
use HttpServer\Http\Request;
|
||||
use HttpServer\Http\Response;
|
||||
use HttpServer\Abstracts\MiddlewareHandler;
|
||||
use Snowflake\Snowflake;
|
||||
|
||||
/**
|
||||
* Class CoreMiddleware
|
||||
* @package BeReborn\Route
|
||||
* @package Snowflake\Snowflake\Route
|
||||
* 跨域中间件
|
||||
*/
|
||||
class CoreMiddleware extends MiddlewareHandler
|
||||
@@ -27,7 +29,7 @@ class CoreMiddleware extends MiddlewareHandler
|
||||
$header = $request->headers;
|
||||
|
||||
/** @var Response $response */
|
||||
$response = \BeReborn::getApp('response');
|
||||
$response = Context::getContext('response');
|
||||
$request_method = $header->getHeader('access-control-request-method');
|
||||
$request_headers = $header->getHeader('access-control-request-headers');
|
||||
$response->addHeader('Access-Control-Allow-Headers', $request_headers);
|
||||
|
||||
@@ -11,10 +11,11 @@ use HttpServer\Route\Filter\HeaderFilter;
|
||||
use HttpServer\Route\Filter\QueryFilter;
|
||||
use Exception;
|
||||
use HttpServer\Application;
|
||||
use Snowflake\Snowflake;
|
||||
|
||||
/**
|
||||
* Class Filter
|
||||
* @package BeReborn\Route
|
||||
* @package Snowflake\Snowflake\Route
|
||||
*/
|
||||
class Filter extends Application
|
||||
{
|
||||
@@ -37,7 +38,7 @@ class Filter extends Application
|
||||
}
|
||||
|
||||
/** @var BodyFilter $class */
|
||||
$class = \BeReborn::createObject(BodyFilter::class);
|
||||
$class = Snowflake::createObject(BodyFilter::class);
|
||||
$class->rules = [];
|
||||
$class->params = Input()->params();
|
||||
|
||||
@@ -57,7 +58,7 @@ class Filter extends Application
|
||||
}
|
||||
|
||||
/** @var HeaderFilter $class */
|
||||
$class = \BeReborn::createObject(HeaderFilter::class);
|
||||
$class = Snowflake::createObject(HeaderFilter::class);
|
||||
$class->rules = [];
|
||||
$class->params = request()->headers->getHeaders();
|
||||
|
||||
@@ -77,7 +78,7 @@ class Filter extends Application
|
||||
}
|
||||
|
||||
/** @var QueryFilter $class */
|
||||
$class = \BeReborn::createObject(QueryFilter::class);
|
||||
$class = Snowflake::createObject(QueryFilter::class);
|
||||
$class->rules = [];
|
||||
$class->params = request()->headers->getHeaders();
|
||||
|
||||
|
||||
@@ -8,7 +8,7 @@ use Exception;
|
||||
|
||||
/**
|
||||
* Class BodyFilter
|
||||
* @package BeReborn\Route\Filter
|
||||
* @package Snowflake\Snowflake\Route\Filter
|
||||
*/
|
||||
class BodyFilter extends Filter
|
||||
{
|
||||
|
||||
@@ -10,7 +10,7 @@ use validator\Validator;
|
||||
|
||||
/**
|
||||
* Class Filter
|
||||
* @package BeReborn\Route\Filter
|
||||
* @package Snowflake\Snowflake\Route\Filter
|
||||
*/
|
||||
abstract class Filter extends Application
|
||||
{
|
||||
|
||||
@@ -7,7 +7,7 @@ use Exception;
|
||||
|
||||
/**
|
||||
* Class HeaderFilter
|
||||
* @package BeReborn\Route\Filter
|
||||
* @package Snowflake\Snowflake\Route\Filter
|
||||
*/
|
||||
class HeaderFilter extends Filter
|
||||
{
|
||||
|
||||
@@ -8,7 +8,7 @@ use Exception;
|
||||
|
||||
/**
|
||||
* Class QueryFilter
|
||||
* @package BeReborn\Route\Filter
|
||||
* @package Snowflake\Snowflake\Route\Filter
|
||||
*/
|
||||
class QueryFilter extends Filter
|
||||
{
|
||||
|
||||
@@ -6,10 +6,11 @@ namespace HttpServer\Route;
|
||||
|
||||
use Exception;
|
||||
use HttpServer\Application;
|
||||
use Snowflake\Snowflake;
|
||||
|
||||
/**
|
||||
* Class TcpListen
|
||||
* @package BeReborn\Route
|
||||
* @package Snowflake\Snowflake\Route
|
||||
*/
|
||||
class Handler extends Application
|
||||
{
|
||||
@@ -23,7 +24,7 @@ class Handler extends Application
|
||||
*/
|
||||
public function __construct()
|
||||
{
|
||||
$this->router = \BeReborn::$app->getRouter();
|
||||
$this->router = Snowflake::get()->router;
|
||||
|
||||
parent::__construct([]);
|
||||
}
|
||||
|
||||
@@ -1,69 +0,0 @@
|
||||
<?php
|
||||
|
||||
|
||||
namespace HttpServer\Route;
|
||||
|
||||
|
||||
use Exception;
|
||||
use HttpServer\Application;
|
||||
|
||||
/**
|
||||
* Class Limits
|
||||
* @package BeReborn\Route
|
||||
*/
|
||||
class Limits extends Application
|
||||
{
|
||||
|
||||
public $route = [];
|
||||
|
||||
/**
|
||||
* @param string $path
|
||||
* @param int $limit
|
||||
* @param int $duration
|
||||
* @param bool $isBindConsumer
|
||||
* @return $this
|
||||
* 设置限流
|
||||
*/
|
||||
public function addLimits(string $path, int $limit, int $duration = 60, bool $isBindConsumer = false)
|
||||
{
|
||||
if ($limit < 0) {
|
||||
$limit = 0;
|
||||
}
|
||||
$this->route[$path] = [$limit, $duration, $isBindConsumer];
|
||||
return $this;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param int $userId
|
||||
* @return bool
|
||||
* @throws Exception
|
||||
*
|
||||
* 判断有没有被限流
|
||||
*/
|
||||
public function isRestrictedCurrent(int $userId = 0)
|
||||
{
|
||||
$path = \request()->getUri();
|
||||
if (!isset($this->route[$path])) {
|
||||
return false;
|
||||
}
|
||||
$redis = \BeReborn::getRedis();
|
||||
[$limit, $duration, $isBindConsumer] = $this->route[$path];
|
||||
if ($limit < 1) {
|
||||
return false;
|
||||
}
|
||||
if ($isBindConsumer && $userId < 1) {
|
||||
return true;
|
||||
}
|
||||
|
||||
$uri = md5($path) . '_' . $userId;
|
||||
if ($redis->incr($uri) > $limit) {
|
||||
return true;
|
||||
}
|
||||
if ($redis->ttl($uri) == -1) {
|
||||
$redis->expire($uri, $duration);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
@@ -15,7 +15,7 @@ use HttpServer\Route\Dispatch\Dispatch;
|
||||
|
||||
/**
|
||||
* Class Middleware
|
||||
* @package BeReborn\Route
|
||||
* @package Snowflake\Snowflake\Route
|
||||
*/
|
||||
class Middleware
|
||||
{
|
||||
|
||||
@@ -7,10 +7,11 @@ namespace HttpServer\Route;
|
||||
use HttpServer\Http\Request;
|
||||
use Exception;
|
||||
use HttpServer\Application;
|
||||
use Snowflake\Snowflake;
|
||||
|
||||
/**
|
||||
* Class Node
|
||||
* @package BeReborn\Route
|
||||
* @package Snowflake\Snowflake\Route
|
||||
*/
|
||||
class Node extends Application
|
||||
{
|
||||
@@ -100,7 +101,7 @@ class Node extends Application
|
||||
$rule['class'] = Filter::class;
|
||||
}
|
||||
/** @var Filter $object */
|
||||
$object = \BeReborn::createObject($rule);
|
||||
$object = Snowflake::createObject($rule);
|
||||
if (!$object->handler()) {
|
||||
return false;
|
||||
};
|
||||
@@ -243,7 +244,7 @@ class Node extends Application
|
||||
*/
|
||||
public function limits(int $limit, int $duration = 60, bool $isBindConsumer = false)
|
||||
{
|
||||
$limits = \BeReborn::$app->getLimits();
|
||||
$limits = Snowflake::get()->getLimits();
|
||||
$limits->addLimits($this->path, $limit, $duration, $isBindConsumer);
|
||||
return $this;
|
||||
}
|
||||
@@ -266,7 +267,7 @@ class Node extends Application
|
||||
if (is_array($middle)) {
|
||||
$_tmp = $this->each($middle, $_tmp);
|
||||
} else {
|
||||
$_tmp[] = \BeReborn::createObject($middle);
|
||||
$_tmp[] = Snowflake::createObject($middle);
|
||||
}
|
||||
} catch (Exception $exception) {
|
||||
}
|
||||
@@ -305,7 +306,7 @@ class Node extends Application
|
||||
if (is_array($class)) {
|
||||
$_temp = $this->each($class, $_temp);
|
||||
} else {
|
||||
$_temp[] = \BeReborn::createObject($class);
|
||||
$_temp[] = Snowflake::createObject($class);
|
||||
}
|
||||
}
|
||||
return $_temp;
|
||||
|
||||
@@ -12,10 +12,11 @@ use HttpServer\Application;
|
||||
use Snowflake\Config;
|
||||
use Snowflake\Core\JSON;
|
||||
use Snowflake\Exception\ConfigException;
|
||||
use Snowflake\Snowflake;
|
||||
|
||||
/**
|
||||
* Class Router
|
||||
* @package BeReborn\Route
|
||||
* @package Snowflake\Snowflake\Route
|
||||
*/
|
||||
class Router extends Application implements RouterInterface
|
||||
{
|
||||
@@ -173,7 +174,7 @@ class Router extends Application implements RouterInterface
|
||||
*/
|
||||
public function listen(int $port, Closure $closure)
|
||||
{
|
||||
$stdClass = \BeReborn::createObject(Handler::class);
|
||||
$stdClass = Snowflake::createObject(Handler::class);
|
||||
$this->group(['prefix' => $port], $closure, $stdClass);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user