我在本地网络中的一台计算机上运行本地Web服务,该计算机是带有自签名证书的https。由于它是自签名的,Chrome(和其他浏览器)拒绝来自我的javascript的调用。我得到一个异常(转到失败的情况),但文本为null,状态为零。当由于DNS解析问题(主机无法访问)或类似错误而失败时,它是相同的状态和文本。有没有办法确定确切的错误?我想确定自签名证书问题,以便我可以请求用户手动信任证书。
注意:我的网站是带有正确证书的HTTPS,但是,我要使用的本地服务是带有自签名证书的https。
答案 0 :(得分:1)
试试这个:
$.ajax({
async: 'false',
type: 'GET',
url: 'http://',
success: function(data, textStatus ){
console.log('STATUS: '+textStatus);
},
error: function(xhr, textStatus, errorThrown){
console.log('STATUS: '+textStatus+'\nERROR THROWN: '+errorThrown);
}
});
async:false
让您的AJAX调用同步,使其逐行执行,因此AJAX调用后的任何内容都必须等到它完成。警告:不推荐使用同步AJAX调用,因为它可能会损害用户体验(通过等待很多次)。