AngularJS $cookieStore перестал работать
Этим утром, когда я пришел на работу и запустил свое приложение, оно внезапно перестало работать. Я проследил проблему до $ cookieStore не работает.
Кто-нибудь сталкивался с такой же проблемой раньше? Я немного растерялся, что искать проблему, как вы можете видеть из моей консоли после того, как я добавил прерывание отладки. CookieStore ничего не сохраняет:
Изменить: Еще немного информации: я тестировал одно и то же приложение на другом ПК, и оно делает то же самое в Chrome или IE. Поэтому я пришел к выводу, что мои библиотеки могут быть сломаны. Поэтому я заново загрузил 1.4.9 Angular и ngCookies. И это все еще делает то же самое, никакие куки не пишутся. У меня была более старая онлайн-версия, которая, кажется, работает нормально и пишет куки. Как я могу сравнить целые папки со всеми файлами и папками, чтобы определить причину проблемы? Я думаю, что библиотека сломала это. Ничто в моем Версионном контроле не показывает код, влияющий на куки в любом случае
Мой логин контроллер:
app.controller('LoginController', function ($rootScope, $scope, $cookieStore, $state, AuthenticationService, $timeout, $http, apiserv) {
$scope.dataLoading = false;
$scope.error = $rootScope.message;
$rootScope.globals = [];
$cookieStore.remove('globals');
$cookieStore.remove('auth');
$scope.login = function () {
$scope.dataLoading = true;
var url = apiserv + "api.login.php?username=" + $scope.username + "&password="+$scope.password;
$http({url: url}).then(function (rs) {
console.log(rs.data);
if (rs.data.success) {
var auth = rs.data.auth;
$rootScope.globals = {
currentUser: rs.data
};
$cookieStore.put('globals', $rootScope.globals);
$cookieStore.put('auth', auth);
debugger; // Where I took the above screenshot
$state.go('app.sites');
} else {
$scope.error = rs.data.message;
$scope.dataLoading = false;
}
});
};
}
);
1 ответ
Я нашел проблему. Я добавил эту строку в свой index.html, и он сломал куки
<script>document.write('<base href="' + document.location + '" />');</script>
НЕ ИСПОЛЬЗУЙТЕ БАЗУ... обратите внимание на себя (все БАЗЫ не принадлежат нам:)