Я новичок. Я написал тестовое приложение, состоящее из графического интерфейса AngularJs на стороне клиента и PHP API на стороне сервера.
Это служба angular, обрабатывающая запросы
myApp.factory('Book', ['$resource', 'API_URL', function($resource, API_URL){
return $resource(API_URL + '/books/:bookId', {bookId: '@bookId'}, {
get: { method: 'GET', isArray:true },
update: { method: 'PUT'},
save: { method: 'POST'},
delete: {method:'DELETE'},
});
}]);
Когда я отправляю книгу из приложения Angular, я могу поймать POST в Slim, используя
$post_a = json_decode($app->request->getBody());
//$post_b = $app->request->post(); //this would be empty
Когда я использую Postman и выполняю POST, я могу поймать POST в Slim, используя
//$post_a = json_decode($app->request->getBody()); // this would be empty
$post_b = $app->request->post();
Я не понимаю, почему такая разница. Не могли бы вы объяснить?
Разве я не собирался перехватывать сообщение только с помощью $app->request->post(); в обоих случаях? Почему пост из Angular можно перехватить только с помощью $app->request->getBody()?