I am having a ajax post call to a cakePhp Controller:
$.ajax({
type: \"POST\",
url: \'locations/add\',
data: {
As of cakePHP 4.x.x the following should work assuming that your controller and routes are set as shown below:
controller:
public function index()
{
$students = $this->Students->find('all');
$this->set(compact('students'));
$this->viewBuilder()->setOption('serialize',['students']);
}
Routes:
setRouteClass(DashedRoute::class);
$routes->scope('/', function (RouteBuilder $builder) {
$builder->setExtensions(['json']);
$builder->resources('Students');
$builder->fallbacks();
});
Run bin/cake server and visit http://localhost:8765/students.json using postman/insomnia or just the normal browser. See further documentation for setting up Restful controllers and Restful Routing
Don't forget to set the method to GET on postman and insomnia.