middlewares / cors
中间件实现跨源资源共享(CORS)
v2.0.2
2022-10-27 15:22 UTC
Requires
- php: ^7.2 || ^8.0
- middlewares/utils: ^3.0
- neomerx/cors-psr7: ^2.0 || ^3.0
- psr/http-server-middleware: ^1.0
Requires (Dev)
- friendsofphp/php-cs-fixer: ^2.0
- laminas/laminas-diactoros: ^2.3
- oscarotero/php-cs-fixer-config: ^1.0
- phpstan/phpstan: ^0.12
- phpunit/phpunit: ^8|^9
- squizlabs/php_codesniffer: ^3.0
README
使用 neomerx/cors-psr7 实现跨源资源共享(CORS)的中间件。
要求
- PHP >= 7.2
- PSR-7 http 库
- PSR-15 中间件调度器
安装
此包可以通过Composer安装和自动加载,地址为middlewares/cors。
composer require middlewares/cors
示例
use Neomerx\Cors\Strategies\Settings; use Neomerx\Cors\Analyzer; $settings = new Settings(); $settings->setServerOrigin('http', 'example.com', 123); $analyzer = Analyzer::instance($settings); $dispatcher = new Dispatcher([ new Middlewares\Cors($analyzer) ]); $response = $dispatcher->dispatch(new ServerRequest());
使用方法
您必须向构造函数提供一个 Neomerx\Cors\Contracts\AnalyzerInterface
。有关更多信息,请参阅neomerx/cors-psr7。可选地,您还可以将一个 Psr\Http\Message\ResponseFactoryInterface
作为第二个参数提供给构造函数以创建响应。如果没有定义,将使用 Middleware\Utils\Factory 自动检测。
$analyzer = Analyzer::instance($settings); $responseFactory = new MyOwnResponseFactory(); $cors = new Middlewares\Cors($analyzer, $responseFactory);
有关最近更改的更多信息,请参阅CHANGELOG,有关贡献详情的更多信息,请参阅CONTRIBUTING。
MIT许可(MIT)。有关更多信息,请参阅LICENSE。