medz/cors

此包已被废弃,不再维护。未建议替代包。

PHP CORS (跨源资源共享) 中间件。

维护者

详细信息

github.com/medz/cors

源代码

问题

赞助包维护!
medz

v1.5.0 2020-04-15 15:09 UTC

This package is auto-updated.

Last update: 2023-03-09 22:09:55 UTC


README

PHP Composer StyleCI Build Status FOSSA Status

PHP CORS (跨源资源共享) 中间件。

支持

使用

composer require medz/cors

示例

use Medz\Cors\Cors;

$cors = new Cors($config); // The $config 👉 `config/cors.php` file.
$cors->setRequest($requestType, $request); // The $request is empty array or is `NULL` or $_REQUEST
$cors->setResponse($responseType, $response); // The $response is empty array.
$cors->handle();

$response = $cors->getResponse();

both $requestType and $responseType 是任何类型,分别设置为支持,但如果在框架中使用,这两个值通常相同。因为可以分别设置,所以可以根据需求提供不同的值以实现目标。

配置

配置示例

$config = [
    'allow-credentials' => false, // set "Access-Control-Allow-Credentials" 👉 string "false" or "true".
    'allow-headers'      => ['*'], // ex: Content-Type, Accept, X-Requested-With
    'expose-headers'     => [],
    'origins'            => ['*'], // ex: https://
    'methods'            => ['*'], // ex: GET, POST, PUT, PATCH, DELETE
    'max-age'            => 0,
];

数组

use Medz\Cors\Cors;

$cors = new Cors($config);
$cors->setRequest('array', $request);
$cors->setResponse('array', $response);
$cors->handle();

$responseHeadersArray = $cors->getResponse();

PSR-7

use Medz\Cors\Cors;

$cors = new Cors($config);
$cors->setRequest('psr-7', $request);
$cors->setResponse('psr-7', $response);

$response = $cors->getResponse();

其他

由于此包提供的接口功能,可以在任何其他框架中以少量代码实现。

优秀仓库

许可证

组件是开源软件,采用MIT许可证

FOSSA Status