nordsoftware / lumen-cors
该包已被 放弃 并不再维护。未建议替代包。
Lumen PHP 框架的 CORS 模块。
3.5.0
2022-03-24 15:05 UTC
Requires
- php: >=7.1
- illuminate/support: ^5.4 || ^6.0 || ^7.0 || ^8.0 || ^9.0
Requires (Dev)
- codeception/assert-throws: ^1.1
- codeception/codeception: ^4.1
- codeception/module-asserts: ^1.3
- codeception/specify: ^1.2
- codeception/verify: ^1.2
- laravel/lumen-framework: ^5.4 || ^6.0 || ^7.0 || ^8.0 || ^9.0
- php-coveralls/php-coveralls: ^2.2
- phpstan/phpstan: ^0.12.2
- phpstan/phpstan-symfony: ^0.12.11
README
为 Lumen PHP 框架 提供的 跨源资源共享 (CORS) 模块。
要求
使用方法
安装
运行以下命令通过 Composer 安装该包:
composer require nordsoftware/lumen-cors
配置
将 config/cors.php
中的配置模板复制到您的应用 config
目录中,并根据需要修改。更多信息请参阅 Lumen 文档中的 配置文件 部分。
可用的配置选项
- allow_origins
array
允许执行请求的源,默认为空数组。也接受模式,例如 *.foo.com - allow_methods
array
允许的 HTTP 方法,默认为空数组 - allow_headers
array
允许的 HTTP 头,默认为空数组 - allow_credentials
boolean
当存在凭证时,是否可以暴露响应,默认为 false - expose_headers
array
允许暴露给 Web 浏览器的 HTTP 头,默认为空数组 - max_age
integer
表示预检请求可以被缓存多长时间,默认为 0
引导
将以下行添加到 bootstrap/app.php
$app->register('Nord\Lumen\Cors\CorsServiceProvider');
$app->middleware([ ..... 'Nord\Lumen\Cors\CorsMiddleware', ]);
该模块现在自动处理所有 CORS 请求。
自定义行为
虽然可以通过 config/cors.php
对服务进行一些配置,但对于一些更复杂的事物,如允许源的正则表达式,则不能配置。如果需要,您可以自己提供此自定义功能。
- 扩展
CorsService
并覆盖例如isOriginAllowed()
- 扩展
CorsServiceProvider
并覆盖registerBindings()
,然后注册您自己的服务类
贡献
请阅读 指导方针。
运行测试
克隆项目,并通过运行以下命令安装其依赖项:
composer install
运行以下命令以运行测试套件:
composer test
许可
见 LICENSE。