Sto lottando su un tema con cors tra js angolari e sails.js (node.js quadro)Angularjs/sailsjs: Access-Control-Allow-Origin non è consentita da Access-Control-Allow-Headers
Provo a correggere l'errore: XMLHttpRequest non può caricare http://localhost:1337/en/auth/forgetpass/email. Campo di intestazione richiesta Access-Control-Allow-Origin non consentito da Access-Control-Allow-Headers.
Quando non attivo il mio intercettore funziona bene. Non ho questo errore Quando lo attivo, ho l'errore.
Nel mio setup .config ho il codice qui sotto:
//Enable cross domain calls
$httpProvider.defaults.useXDomain = true;
delete $httpProvider.defaults.headers.common['X-Requested-With'];
$httpProvider.defaults.headers.common['Access-Control-Allow-Headers'] = '*';
$httpProvider.defaults.headers.common['Access-Control-Allow-Origin'] = '*';
$httpProvider.defaults.headers.common['Access-Control-Allow-Methods'] = 'GET,POST,PUT,HEAD,DELETE,OPTIONS';
$httpProvider.interceptors.push('TokenInterceptor');
Poi, nel mio setup intercettore ho il codice qui sotto:
return {
request: function (config) {
var id = Session.getprop('id');
if(id) {
config.headers = config.headers || {};
config.headers.Authorization = 'Bearer ' + id;
}
return config;
}, ...
Infine, il risultato dalla scheda di rete Chrome è:
Remote Address:127.0.0.1:1337
Request URL:http://localhost:1337/en/auth/forgetpass/email
Request Method:OPTIONS
Status Code:200 OK
Response Headers
Access-Control-Allow-Credentials:true
Access-Control-Allow-Headers:*
Access-Control-Allow-Methods:GET, POST, PUT, DELETE, OPTIONS, HEAD
Access-Control-Allow-Origin:*
Allow:GET,POST,PUT,HEAD,DELETE,TRACE,COPY,LOCK,MKCOL,MOVE,PROPFIND,PROPPATCH,UNLOCK,REPORT,MKACTIVITY,CHECKOUT,MERGE,M-SEARCH,NOTIFY,SUBSCRIBE,UNSUBSCRIBE,PATCH
Connection:keep-alive
Content-Length:154
Content-Type:text/html; charset=utf-8
Date:Sun, 12 Apr 2015 23:51:14 GMT
Set-Cookie:sails.sid=s%3A-bZxQgFntbDqTtaFyWDFFgFr.szR0F68VfIBjVW9kyans9d6v5fz7RMtalQCoMFdbH%2Fg; Path=/; HttpOnly
X-Powered-By:Sails <sailsjs.org>
Request Headers
Accept:*/*
Accept-Encoding:gzip, deflate, sdch
Accept-Language:en-US,en;q=0.8
Access-Control-Request-Headers:access-control-allow-origin, accept, access-control-allow-headers, access-control-allow-methods
Access-Control-Request-Method:POST
Connection:keep-alive
Host:localhost:1337
Origin:http://localhost:9000
Referer:http://localhost:9000/
User-Agent:Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.118 Safari/537.36
E ho ancora lo stesso errore. Un'idea?
Grazie mille!
Che cos'è un "intercettore"? Questo non è un concetto di sails.js. –
Interceptor è un concetto di angularjs – ameilland