2017-06-16 66 views
0

我有一个网页,需要在要加载页面的标头中发送标识和令牌。 php登录脚本返回id和令牌。然后这个id和令牌需要在页面的头部发送,以便加载。提供检查以查找这些自定义标题,如果未设置,则将其重定向到登录页面。该页面需要从javascript函数加载。如果我使用window.location,它将被重定向到登录页面,因为找不到标题。我如何实现这一目标?发送加载页面所需的自定义标头

这里是我的代码:

$.ajax({ 
    type: "POST", 
    url: "http://www.example.com/apis/login.php", 
    data: JSON.stringify(inputs), 
    dataType: "json", 
    success: function(data) { 
     if(data.status == "success") { 
      username = data.username; 
      uid = data.uid; 
      token = decodeURIComponent(data.token); 
      loadpanel(username, uid, token); 
     } 
     else{ 
      alert(data.message); 
     } 
    }, 
    error: function() { 
     alert("could not connect to server"); 
    } 
}); 

function loadpanel(username, uid, token) { 
    $.ajax({ 
     async: true, 
     type: "GET", 
     url: "/haspanel.php", 
     headers: { 
      "U-Name" : username, 
      "U-Id" : uid, 
      "Auth-Token" : encodeURIComponent(token) 
     }, 
     success: function(data) { 
      window.location='/haspanel.php'; 
     }, 
     error: function() { 
      alert("could not connect to server"); 
     } 
    }); 
} 

我知道,这是不行的,但我不明白什么是解决办法。

+0

请显示您的尝试。 –

+1

你能提供一些关于如何检查标题和页面被重定向的代码吗?取决于如何检查,它可以被设置为一个cookie,它会自动发送在标头 – Kaddath

+0

当然,我会更新帖子.. :) –

回答

1

你可以这样做吗? :

window.location = '/page.php?id='+ id +'&token='+ token +''; 

idtoken是包含您的ID和可变参数的要求值的变量。

+0

来重新获取它们,这是我之前做过的,将uid和标记添加为get参数。但是,这会将uid和令牌存储在浏览器历史记录中,并且也可以在url栏上进行复制。所以,我决定把它放在标题中。 –