Я пытаюсь создать REST API для моего сервера через CakePHP.Я думал, что у меня это работает, поскольку я могу получать ответы JSON через веб-браузер, однако при попытке доступа к тому же маршруту через ReactJS действие Controllers фактически не запускается.
Чтение документов CakePHP Мне действительно нужно было только реализовать эти строки кода, чтобы заставить API работать (Согласно документам), и я сделал:
/config/routes.php
Router::scope('/', function($routes) {
$routes->setExtensions(['json']);
$routes->resources('Users');
});
Вот конечная точка API, к которой я хочу обратиться:
`public function signUp() {
$file = fopen("error_log.txt", "w");
$txt = "firing endpoint";
$fwrite($file, $txt);
$fclose($file);
$response = $this->response;
$responseText = [
"status" => "200",
"message" => "User added successfully"
];
$response = $response->withType("application/json")
->withStringBody(json_encode($responseText));
return $response;
}`
Здесь я успешно достигаю этой конечной точки через браузер.Мое сообщение журнала также появляется в error_log.txt
файле
Вот где я делаю запрос через ReactJS:
handleRequest = () => {
console.log('making request');
axios({
method: 'get',
url: 'https://157.230.176.243/users/register.json',
data: {
email: this.state.email,
password: this.state.password
}
})<br>
.then(function(response) {
console.log('got response');
console.log(response);
})<br>
.catch(function(error) {
console.log('got error');
console.log(error);
})<br>
.then(function(data) {
console.log('always executed');
console.log(data);
});
}
Когда я делаю этот запрос через ReactJS, я получаю XHR failed loading: OPTIONS "https://157.230.176.243/users/register.json"
Также, когда я делаю этот запрос через ReactJS, мое сообщение журнала не записывается в error_log.txt