0
Я пытаюсь создать небольшое приложение с angularjs использованием PHP API на отдельном сервере (как на моей локальной машине)
После онлайн-уроки, у меня есть код ниже. Когда вызывается $ save(), я дублирую $ _POST на сервере, который всегда пуст. Тем не менее, мои данные загружаются нормально, поэтому соединение api является хорошим.
Можете ли вы сказать мне, где я иду не так?
passwordServices.factory('Password', ['$resource',
function($resource){
return $resource(api_base + 'passwords/index/', {}, {
query: {method:'GET', params:{}, isArray:true}
});
}
]);
passwordControllers.controller('PasswordDetailCtrl', ['$scope', '$routeParams', '$http', 'State', 'Password',
function($scope, $routeParams, $http, State, Password) {
$scope.password = Password.get({passwordId: $routeParams.passwordId}, function(data) {
$scope.password.Password.title = "test";
$scope.password.$save();
});
}
]);
А ниже мой CakePHP код API для контекста
public function index(){
$this->autoRender = false;
$this->response->type('json');
if ($this->request->is('post')){
var_dump($_POST);
}else{
if(isset($_GET['passwordId'])){
$results = $this->Password->find('first', array(
'conditions' => array(
'Password.id' => $_GET['passwordId']
),
'contain' => array(
'Provider',
'Type'
)
));
}else{
$results = $this->Password->find('all', array(
'contain' => array(
'Provider',
'Type'
)
));
}
$this->response->body(json_encode($results));
}
}
Это все правильно? $ scope.password.Password.title = "test"; Не должно быть $ scope.password.title = "test"; ? –
Я использую cakephp для API, который возвращает {Password: {title: '', ..}} Я правильно понял, что POST должен публиковать данные? Или все данные должны пройти через URL? – user195257