web-dev-qa-db-ja.com

ヘッダーをwindow.location.pathnameに追加

アプリの認証を設定しています。ログインするための投稿リクエストを行った後、JSON Webトークンが応答として送信されます。これをAjax経由でヘッダーに添付できます。ログイン後にリダイレクトするためにwindow.location.pathnameを使用するときに問題が発生します。これはAjaxリクエストではないため、ヘッダーにトークンが添付されていないためです。どうすればこれを回避できますか?

$.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 = '/';
    })
  },
13
ahrobins

簡単に言えば、window.locationを使用してHTTPヘッダーを設定することはできません。

httpヘッダーをwindow = location.hrefに追加Angular app

4