2017-01-14 6 views
1

JQueryのみを使用して簡単なJWT認証を実行しようとしています。私はすでに郵便配達員とバックエンドをテストしており、すべてがそこで動作するようです。私のフロントエンドのコードは私はのMemberInfoページにリダイレクトされますので、ときJqueryを使用した単純なJWT認証

$("#send").click(function(){ 
    var name = $('#name').val(); 
    var password = $('#password').val(); 
    var token = '' 
    $.ajax({ 
     type: 'POST', 
     url: '/authenticate', 
     data: { name: name , password: password }, 
     success: function(resultData){ 
     var token = resultData.token; 
     // console.log(token); 
     $.ajax({ 
      type: 'GET', 
      url: '/memberinfo', 
      headers: {"Authorization": token}, 
      success: function(data){ 
      $(location).attr('href', '/memberinfo') 
      } 
     }); 
     } 
    }); 
}); 

どのように見えるか

は、ここでは私が不正だ私を示しています。私がAjaxコールを正しく行っているかどうかは不明です。もし私に正しい方法を指示できる人がいれば本当に役に立ちます。ありがとう

答えて

1

簡単です。ログイン要求の応答でトークンを取得し、それをlocalStorageに保存するだけです。次に、すべての要求ヘッダー内のローカルストレージからトークンを使用します。 ここではサンプルコードをご覧ください。

https://github.com/chaofz/jquery-jwt-auth

1

私は間違っているかもしれませんが、GET requestのAPI呼び出しと同じURLの/memberinfoのAPI呼び出しを設定しているため、コードが間違っている可能性があります。あなたが同じ/memberinfo URLにリダイレクトされており、あなたのブラウザがheaders: {"Authorization": token}を送ってこなかったので、Postmanを使ったあなたのテスト結果は正常に動作していて、/memberinfoに正しくリダイレ​​クトされています。unauthorised結果 クライアントのメンバーページと異なるapi呼び出しURLを作成しようとします。

関連する問題