Düğümlü/açık arka uçlu bir açısal uygulamasına sahibim. HttpProvider kullanarak bir kimlik doğrulama önleme uygulama girişiminde bulundum. Yerel depoda saklanan bir belirteç olduğunda, uygulama beklendiği gibi çalışır ve kısıtlı verileri arka uçtan alabilirim, ancak giriş yapıp ana görünümü yönlendirmeye çalıştığımda belirteci sildiğimde, bir TypeError alıyorum. : Tanımlanamayan 'üstbilgileri' okunamıyor. Eğer konfigürasyonda kod satırını açıklarsam, intertiperi kaydettirdim, hata gitti. Tanılayamadığım bazı nedenlerden dolayı, yerel depolama alanında bir belirteç olmadığı sürece uygulama çöküyor.
Kimlik keseni: Yapılandırma nesnesi Kayıtlı
angular.module('barmehealth')
.factory('authInterceptor', function(authToken) {
return {
request: function(config) {
var token = authToken.getToken();
if (token) {
config.headers.Authorization = 'Bearer ' + token;
return config;
}
},
response: function(response) {
return response;
}
};
});
: Ben kodu değiştirerek sorunu çözmek için çalıştı
$httpProvider.interceptors.push('authInterceptor');
aşağıdaki gibidir:
.factory('authInterceptor', function(authToken) {
return {
request: function(config) {
var currentToken = authToken.getToken();
var token = currentToken ? currentToken : null;
if (token) {
config.headers.Authorization = 'Bearer ' + token;
return config;
}
},
response: function(response) {
return response;
}
};
});
Oh adamım, ne aa bir hata. Teşekkürler, açıkçası beklendiği gibi çalışır. – Aaron