使用jQuery .ajax,但弹出窗口仍然要求登录/密码

时间:2013-06-19 21:02:55

标签: javascript jquery webforms

我正在尝试使用.ajax来测试我们在内部应用程序(基本身份验证)上的登录页面并查看http状态代码。但是,模态窗口仍会弹出提示输入登录凭据。为什么是这样?我试图让这个发生在幕后。

代码:

 $(document).ready(function() {

      $.ajax({
          url:"./testurl.aspx",
          type: "POST",
          data:{
                username: "Test",
                password: "Password"
          },
          complete: function(xhr){
                alert(xhr.status);
          }
      });
 });

但我仍然明白这一点:

enter image description here

然后当然会显示警告(xhr.status),但是我需要这个而不需要手动输入用户名/ pw。

1 个答案:

答案 0 :(得分:3)

HTTP Basic Authentication可以作为HTTP标头或URL传递,而不是POST主体。

将其放入网址的示例:

 $.ajax({
      url:"//Test:Password@" + location.host + "/path/to/testurl.aspx",
      type: "POST",
      complete: function(xhr){
            alert(xhr.status);
      }
  });

您还可以使用ajax方法的headers属性来尝试添加标头,但这需要Base64编码密码。