Boa tarde,
Eu tenho o seguinte recurso:
@POST
@Consumes(MediaType.APPLICATION_JSON)
public Response novoPedido(Ticket ticket) {
ticket.getTicketItems().forEach(ticketItem -> {
ticketItem.setTicket(ticket);
ticketItem.getTicketItemModifiers().forEach(t -> {
t.setTicketItem(ticketItem);
});
});
ticket.setOwner(USER);
OrderController.saveOrder(ticket, USER);
List<KitchenTicket> kitchenTickets = KitchenTicket.fromTicket(ticket);
kitchenTickets.forEach(kitchenTicket -> KitchenTicketDAO.getInstance().saveOrUpdate(kitchenTicket));
TicketDAO.getInstance().saveOrUpdate(ticket);
URI uri = URI.create("pedidos/" + ticket.getId());
return Response.created(uri)
.header("Access-Control-Allow-Origin", "*")
.header("Access-Control-Allow-Methods", "POST")
.build();
}
Eu consigo fazer um post sem problemas na url desse recurso usando o postman. Mas testando com um post no jquery eu recebo a seguinte mensagem no console:
Failed to load http://172.16.18.10:8081/api/aa/v1/pedidos: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://172.16.18.221:8080' is therefore not allowed access.
Veja a minha function:
var pedido = .........
function enviaPedido() {
$.ajax({
type: "POST",
url: "http://172.16.18.10:8081/api/aa/v1/pedidos",
data: JSON.stringify(pedido),
headers: {
'Accept': 'application/json',
'Content-Type': 'application/json'
},
success: function(data) {
console.log("sucesso");
}
});
}
Alguém sabe me dizer o que fiz de errado ?