Add Header to window.location.pathname

41,311

Short answer is: you cannot set HTTP headers using window.location.

Adding http headers to window.location.href in Angular app

Share:
41,311
ahrobins
Author by

ahrobins

Updated on March 13, 2020

Comments

  • ahrobins
    ahrobins about 4 years

    I am setting up authentication for an app. After I make a post request to login, a JSON Web Token is sent in response. I am able to attach this to the header via Ajax. The problem is when using window.location.pathname to redirect after login, since it is not an Ajax request it does not have the token attached to the header. How do I get around this?

    $.ajaxSetup({
      headers: {
        'x-access-token': window.localStorage.jwt
      }
    });
    
    var Auth = {
      signup: function () {
        console.log('signuppp');
        var userSignup = {
          username: $('#usernameSignup').val(),
          password: $('#passwordSignup').val()
        };
        console.log(userSignup)
        return $.post('/api/users/register', userSignup, function (resp) {
          console.log('resp: ',resp);
          window.localStorage.setItem('jwt', resp.token);
          
          //does not have x-access-token header
          window.location.pathname = '/';
        })
      },