hbathach
By:
hbathach

Cookies work great on localhost but does not work on VPS

October 10, 2017 115 views
Node.js Ubuntu 16.04

I have a Nodejs and Angularjs web app. Everything works perfectly on localhost but when I push my code to my droplet, cookie does not work. Everything that I saved in cookie does not appear on Cookies. I have just created an Amazon VPS and the same problem. I know that cookie is client side but why does it happen ? This is my piece of angular code:
$scope.login = function () {

var isEmpty = AuthService.checkEmptyLogin($scope.user);
if (!isEmpty.isErr) {
  UserService.login($scope.user).then(function (result) {
    if (result.data.success) {
      $rootScope.userLogin = result.data.data.name;

      //------------------
      var day = new Date();
      day.setDate(day.getDay() + 30);

      var options = {
        domain: "localhost",
        httpOnly: true,
        expires: day
      };
      // nothing in cookies
      $cookies.put('token', result.data.data.token, options);
      $cookies.put('name', result.data.data.name, options);
      // session storage works fine
      $sessionStorage.user = 'heheeheh';
      flash.success = result.data.message;
      $state.go('home');
    } else {
      flash.error = result.data.message;
    }
  });
} else {
  $scope.loginMessage = isEmpty.message;
}
1 Answer

Have you tried swapping out localhost for the ip address of the server?

Have another answer? Share your knowledge.