クライアントが HTTPS 経由でユーザー名とパスワードを渡す最初の呼び出しを行い、トークンを取得すると仮定します。あなたの質問は、トークンを保存する方法ですか?あなたのアプリケーションはSPAだと思います。もしそうなら、なぜそれを JavaScript 変数に保存しないのでしょうか? Cookie を使用しない場合は、XSRF を回避します。もちろん、ユーザー名とパスワードがクライアント側に保存されないようにする必要があります。また、トークンの有効期間トークンは有限であり、できればできるだけ小さくする必要があります。
編集:
すべてのページでトークンを再生成できる場合 (SPA ではないため)、それはさらに優れており、トークンの寿命を非常に短くします。このようなコードを使用できます。私は Authorization ヘッダーとベアラースキームを使用していますが、標準化が必要ない場合は、独自のスキームを使用することもできます。
var accessToken = ''; // Write out the token into this variable in the server side (view)
$.ajax({
type: 'GET',
url: 'http://whatever',
dataType: 'json',
contentType: 'application/json; charset=utf-8',
headers: { 'Authorization=': ='Bearer ' + accessToken },
success: function (data) {
}
});