Como adicionar a configuração do CORS no controlador angular?
Eu tenho um servidor que irá buscar dados do Mongo e irá chutar no tipo json
CORS PROBLEMserver.js /
/ server Side CORS Code aded
app.all('*', function(req, res, next) {
res.header("Access-Control-Allow-Origin", "*");
res.header('Access-Control-Allow-Methods', 'OPTIONS,GET,POST,PUT,DELETE');
res.header("Access-Control-Allow-Headers", "Content-Type, Authorization, X-Requested-With");
if ('OPTIONS' == req.method){
return res.send(200);
}
next();
});
Guys Plz suppose the Link **Baseurl** as my menu API
var baseurl = "http: // localhost: 8000 / menus";(para sua conveniência)
**baseurl** which kicks a Json
Agora, meu objetivo é solicitá-lo pelo controlador Angular ($ http): -
'use strict'
var app = angular.module('AngularApp', []);
**/// Cors enabled Cliet side**
app.config(['$httpProvider', function ($httpProvider) {
// ...
$httpProvider.defaults.useXDomain = true;
$httpProvider.defaults.withCredentials = true;
delete $httpProvider.defaults.headers.common["X-Requested-With"];
$httpProvider.defaults.headers.common["Accept"] = "application/json";
$httpProvider.defaults.headers.common["Content-Type"] = "application/json";
}]);
**var baseurl="http://localhost:8000/menus";**
app.controller("MenuController", function($scope, baseurl,$http) {
$scope.menu= [];
$http.get(baseurl).success(function(data) {
$scope.menu=data;
});
});
... quando testei em navegadores
O Firefox retorna o erro CORS: - Solicitação de origem cruzada bloqueada: a mesma política de origem não permite a leitura do recurso remoto embaseurl. Isso pode ser corrigido movendo o recurso para o mesmo domínio ou ativando o CORS. Aumento do Chrome: - XMLHttpRequest não pode carregar. Nenhum cabeçalho 'Access-Control-Allow-Origin' está presente no recurso solicitado. Portanto, localhost de origem não tem acesso permitido.