snelg / cakephp-cors
Cors plugin for CakePHP
Installs: 2 226
Dependents: 0
Suggesters: 0
Security: 0
Stars: 19
Watchers: 2
Forks: 3
Open Issues: 2
Type:cakephp-plugin
Requires
- php: >=5.4.16
- cakephp/cakephp: >=3.0 <3.3
Requires (Dev)
This package is auto-updated.
Last update: 2019-07-05 19:56:07 UTC
README
A simple plugin to add CORS headers to specified requests.
#For CakePHP 3.3+, use https://github.com/ozee31/cakephp-cors
Requirements
- CakePHP 3.0-3.2
- PHP 5.4+
Installation
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
Unlocking CORS for a single controller
Define a single key within the routes array in the DispatcherFactory options array:
DispatcherFactory::add('Cors.Cors', ['routes' => [ 'ControllerClassName' ]]);
Unlocking CORS for a controller scoped to a single action
Define a nested array consisting of 'controller' => 'action' within the routes array in DispatcherFactor options:
DispatcherFactory::add('Cors.Cors', ['routes' => [ 'ControllerClassName' => 'some_action', ]]);
Scoping CORS to particular origins
DispatcherFactory::add('Cors.Cors', ['routes' => [ 'ControllerClassName' => [ 'action_one' => ['origin' => 'somesite.com'] ]]);
Scoping CORS to particular methods
DispatcherFactory::add('Cors.Cors', ['routes' => [ 'ControllerClassName' => [ 'action_one' => [ 'origin' => 'somesite.com', 'methods' => ['PUT', 'DELETE'] ] ]]);
Setting CORS within Router::connect
Router::scope('/', function ($routes) { $routes->connect('/public_api', ['controller' => 'ControllerClass', 'action' => 'action_one', 'cors' => true]] }); }
Router::connect with custom origins, methods, and headers
Router::scope('/', function ($routes) { $routes->connect('/public_api', [ 'controller' => 'ControllerClass', 'action' => 'action_one', 'cors' => [ 'origin' => 'your_origin.com', 'methods' => ['PUT', 'DELETE'], 'headers' => [] ] ]); }); }
Support
For bugs and feature requests, please use the issues section of this repository.
Contributing
To contribute to this plugin please follow a few basic rules.
- Contributions must follow the CakePHP coding standard.
- Unit tests are required.
Creators
License
Copyright 2015, Glen Sawyer and Wes King
Licensed under The MIT License Redistributions of files must retain the above copyright notice.