Javascript 如何检查XMLHttpRequest中现有的请求头?

Javascript 如何检查XMLHttpRequest中现有的请求头?,javascript,xmlhttprequest,Javascript,Xmlhttprequest,目标是在每个AJAX调用之前附加X-Request-Id头,如果它还不存在的话 我目前有一个解决方案,可以很好地添加标题: (function() { XMLHttpRequest.prototype.realSend = XMLHttpRequest.prototype.send; const newSend = function(vData) { this.setRequestHeader('X-Request-ID', generateRequestId()

目标是在每个AJAX调用之前附加
X-Request-Id
头,如果它还不存在的话

我目前有一个解决方案,可以很好地添加标题:

(function() {
    XMLHttpRequest.prototype.realSend = XMLHttpRequest.prototype.send;
    const newSend = function(vData) {
        this.setRequestHeader('X-Request-ID', generateRequestId());
        this.realSend(vData);
    };
    XMLHttpRequest.prototype.send = newSend;
})();
上面的问题是,我无法检查是否已经设置了此标头,或者之前设置的其他请求标头。我想访问这里存在的请求头,并在添加请求id头之前执行一些自定义逻辑,可能还会为我的所有请求添加一些新的请求id头

如何在此处获取现有标题?或者其他一些允许执行相同功能的解决方案,在发送http请求之前拦截js客户端中的http请求并修改标头(请使用不带服务人员的解决方案)