猿问

通过 Ajax 进行基本身份验证,无需在对话框中输入用户名和密码即可访问使用 https 保护的页面

我需要访问并显示托管在此 url 上的网站页面 - https://xxxxx.com,而没有来自托管在同一网络中的应用程序的任何身份验证对话框。但我无法再见 - 通过对话框进入用户名和密码。


我使用 Basic Auth 进行授权,它与 Postman 一起工作得很好。我通过在标头中提供 Basic Auth 值作为 Authorization 在 Postman 中获得成功响应。Basic Auth 的相同加密值,我在 Springboot 代码中用于从中获取一些详细信息页面,它也工作正常。


但是,当我尝试使用标记和 Javascript 导航/显示此页面时,在为基本身份验证设置所需的标头后,我收到错误响应和未授权 - 401 消息 - WWW-Authenticate: Basic realm="请使用您的登录Office 电子邮件用户 ID(不带 @xxx.xx)”


我尝试了不同的 ajax 组合,但没有得到 200 代码,它总是要求进入对话框,要求我输入用户名和密码。否则以 401 结束。


下面是使用的代码。


function handleSubmit(e){

        $.ajax({

            url: 'https://xxxxxx.com/se/',

            headers: {

                'Access-Control-Allow-Origin': '*',

                'Content-Type':'application/json',


            },

            type: 'GET',

            dataType: 'json',

            async: false,

            data: '',

             beforeSend: function (xhr) {

                  xhr.setRequestHeader('Authorization', "Basic cmlqdS5mcmFuY2lzOkN1cmlwczIxxxxxxxx==");

                  xhr.setRequestHeader('X-Requested-With', 'XMLHttpRequest');

              },

            success: function(){

              alert('succes: ');

            }


          });

}

这是我的 HTML 表单 -


暮色呼如
浏览 275回答 2
2回答
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答