Estou tentando enviar os dados para o servidor, porém sempre recebo a mesma mensagem de erro abaixo, alguém pode me ajudar?
XMLHttpRequest cannot load http://aluracar.herokuapp.com/salvarpedido?carro=C3+1.0&email=teste@gmail.com&endereco=rua+dos+testes+12&nome=teste. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:8100' is therefore not allowed access. The response had HTTP status code 500.
Segue meu service, controller e form:
angular.module('starter')
.service('CarroService', function($http) {
var url = 'http://aluracar.herokuapp.com/';
return{
obterCarros : function() {
return $http.get(url).then(function(response) {
return response.data;
});
},
salvarPedido: function(pedido) {
return $http.get(url + "salvarpedido", pedido).then(function(response) {
return "Deu certo.";
});
}
}
});
angular.module('starter')
.controller('FinalizarPedidoController', function($stateParams, $scope, $ionicPopup, $state, CarroService){
$scope.carroFinalizado = angular.fromJson($stateParams.carro);
$scope.pedido = {};
$scope.finalizarPedido = function() {
var pedidoFinalizado = {
params : {
carro : $scope.carroFinalizado.nome,
preco : $scope.carroFinalizado.preco.$ionicPopup,
nome : $scope.pedido.nome,
endereco : $scope.pedido.endereco,
email : $scope.pedido.email
}
}
CarroService.salvarPedido(pedidoFinalizado).then(function(dados){
$ionicPopup.alert({
title: 'Parabéns',
template: 'Você acaba de comprar um carro.'
}).then(function() {
$state.go('listagem');
});
}, function(erro){
$ionicPopup.alert({
title: 'Deu erro',
template: 'Campos obrigatórios'
});
});
}
});
<ion-view>
<ion-nav-title>Estamos Quase lá...</ion-nav-title>
<ion-content>
<div class="card">
<div class="item item-divider">
<h2>{{carroFinalizado.nome}}</h2>
<h3>R{{carroFinalizado.preco | currency}}</h3>
</div>
<div class="item item-text-wrap">
<div class="list">
<label class="item item-input item-stacked-label">
<span class="input-label">Nome Completo</span>
<input ng-model="pedido.nome" type="text">
</label>
<label class="item item-input item-stacked-label">
<span class="input-label">Endereço</span>
<input ng-model="pedido.endereco" type="text">
</label>
<label class="item item-input item-stacked-label">
<span class="input-label">E-mail</span>
<input ng-model="pedido.email" type="text">
</label>
<a class="button button-positive button-full" ng-click="finalizarPedido()" href="">Realizar um sonho</a>
</div>
</div>
</div>
</ion-content>
</ion-view>