gpt4 book ai didi

javascript - jQuery Basic Auth 发送凭据时出错

转载 作者:行者123 更新时间:2023-11-28 01:04:54 25 4
gpt4 key购买 nike

有一个问题,我“认为”凭据没有被设置,即使在 beforeSend 中指定了凭据。所有设置都是动态的,包括 header 和基本身份验证(用于 api 文档)。

基本身份验证正在顺利传递,即:“Basic XXXXXXXX”

服务器具有 Access-Control-Allow-Origin“*”

var $button = $(this).button('loading'),
$parent = $(this).parents('.api-test-response:first'),
$data = $('.api-test-data',$parent),
headers = {};

$('.api-test-headers tr',$parent).each(function(){
if($('.header-toggle', this)[0].checked && $('input.api-test-header-key',this).val() != ""){
headers[$('input.api-test-header-key',this).val()] = $('input.api-test-header-value',this).val();
}
});

$.ajax({
async: false,
cache: false,
crossDomain: true,
headers: headers,
beforeSend: function(xhr) {
if(headers['Authorization']){
xhr.withCredentials = true;
xhr.setRequestHeader('Authorization', headers['Authorization']);
}
return true;
},
url: this.dataset.url,
method: this.dataset.method || 'get',
dataType: this.dataset.type || 'json',
data: $data[0] ? $data[0].value : '',
success: function(data, status, jqXHR){
$('pre', $parent).removeClass('hide').find('code').html( !data ? status : data instanceof Object ? syntaxHighlight(data) : data );
},
error: function(jqXHR, status, error){
$('pre', $parent).removeClass('hide').find('code').html( '<div class="badge badge-important">'+ jqXHR.status +'</div> ' + (jqXHR.responseText != '' ? jqXHR.responseText : status + ' ' + error) );
}

})
.always(function (jqXhr) {
$button.button('reset');
$("body").scrollspy('refresh');
})

来自 Chrome 的错误:

OPTIONS URL 401 (Unauthorized)
XMLHttpRequest cannot load URL. Invalid HTTP status code 401

Response : No Authorisation Provided

最佳答案

事实证明,这是浏览器预检请求(选项)不包含身份验证 header 信息的问题,因此 java 服务失败。通过捕获并忽略选项请求解决了该问题。

关于javascript - jQuery Basic Auth 发送凭据时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25202848/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com