Boa noite!
Estou tentando cadastrar os dados de um form com um api feita com o laravel 5.1 e o angular JS, meu problema é que ao enviar o dados para salvar ele não pega os valores dos inputs e salva em branco no banco, segue minha aplicação:
Api:
// Cadastrando user
public function store(Request $request)
{
$data = $request->all();
return $this->userRepository->create($data);
}
Angular:
.controller('cadastroController', ['$scope', '$http', function ($scope, $http) {
$scope.cadastroUsuario = function (user) {
$http({
method: "POST",
url: 'http://localhost:8000/apiuser/store',
data: user,
headers: {'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8'}
})
}
}])
Alguém ai pra me ajudar a identificar oq está acontecendo?
Agradeço
Na api ta funcionando corretamente já fiz alguns teste com o Postman, e os campos do form não são obrigatórios.
então o seu post tem algo errado, vindo do JS, certo?
Sim, creio q seja isso! olha ai o meu postman
Se eu coloco um console.log() ele printa os dados no console mais não envia para o banco!
//Cadastra users
.controller(‘cadastroController’, [’$scope’, ‘$http’, function ($scope, $http) {
$scope.cadastroUsuario = function (user) {
console.log(user);
$http({
method: "POST",
url: 'http://localhost:8000/apiuser/store',
data: user,
headers: {'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8'}
})
}
}])
No console:

ola. olha na aba network o que vc realmente esta enviando…
pelo header content-type, vc esta enviando em www-form-urlencoded e não application/json
Realmente o problema era só esse peczenyj! valeu brother pela ajuda.
Alterei para o header para:
headers: {‘Content-Type’: ‘application/json; charset=UTF-8’}