A simple plugin to add CORS headers to specified requests.
#For CakePHP 3.3+, use https://github.com/ozee31/cakephp-cors
- CakePHP 3.0-3.2
- PHP 5.4+
You can install this plugin into your CakePHP application using composer.
To install this plugin, in your terminal type:
composer require snelg/cakephp-cors:dev-master
Define a single key within the routes array in the DispatcherFactory options array:
DispatcherFactory::add('Cors.Cors', ['routes' => [
'ControllerClassName'
]]);
Define a nested array consisting of 'controller' => 'action' within the routes array in DispatcherFactor options:
DispatcherFactory::add('Cors.Cors', ['routes' => [
'ControllerClassName' => 'some_action',
]]);
DispatcherFactory::add('Cors.Cors', ['routes' => [
'ControllerClassName' => [
'action_one' => ['origin' => 'somesite.com']
]]);
DispatcherFactory::add('Cors.Cors', ['routes' => [
'ControllerClassName' => [
'action_one' => [
'origin' => 'somesite.com',
'methods' => ['PUT', 'DELETE']
]
]]);
Router::scope('/', function ($routes) {
$routes->connect('/public_api',
['controller' => 'ControllerClass', 'action' => 'action_one', 'cors' => true]]
});
}
Router::scope('/', function ($routes) {
$routes->connect('/public_api', [
'controller' => 'ControllerClass',
'action' => 'action_one',
'cors' => [
'origin' => 'your_origin.com',
'methods' => ['PUT', 'DELETE'],
'headers' => []
]
]);
});
}
For bugs and feature requests, please use the issues section of this repository.
To contribute to this plugin please follow a few basic rules.
- Contributions must follow the CakePHP coding standard.
- Unit tests are required.
Copyright 2015, Glen Sawyer and Wes King
Licensed under The MIT License Redistributions of files must retain the above copyright notice.