如果令牌有效且存在,我该怎么做才能在每个页面中进行验证?

时间:2019-07-12 12:53:52

标签: javascript asp.net-web-api model-view-controller oauth

我试图在我的api中使用ouath,我做了一个获取令牌的表格。现在,我需要在登录后将用户重定向到页面,并在每个页面中验证令牌是否存在并且有效。

function login() {
  var name = document.getElementById('email').value;
  var senha = document.getElementById('password').value;
  var xhr = new XMLHttpRequest();

  xhr.open('POST', 'https://localhost:44390/token', true);
  xhr.setRequestHeader('content-type', 'application/x-www-form-urlencoded');
  xhr.onload = function() {
    var result = JSON.parse(this.responseText);
    console.log(`${result.token_type} ${result.access_token}`);
    sessionStorage.setItem("token", `${result.token_type} ${result.access_token}`);
    verifica();
  }
  xhr.send(`grant_type=password&username=${name}&password=${senha}`);
}



function verifica() {
  var xhr = new XMLHttpRequest();
  xhr.open('GET', 'https://localhost:44390/api/home', true);
  xhr.setRequestHeader('content-type', 'application/x-www-form-urlencoded');
  xhr.setRequestHeader('Authorization', `${sessionStorage.getItem('token')}`);
  xhr.onload = function() {
    var result = JSON.parse(this.responseText);
    console.log(`${result}`);
  }
  xhr.send();
}

重定向用户后,api将验证令牌是否存在,如果不存在,则用户将被重定向回登录页面

0 个答案:

没有答案