我遇到第三方组件的问题,我能想到的唯一方法是更改XMLHttpRequest默认行为并将 withCredentials 设置为 true 。我只是不知道应该使用哪种方法。
我已经尝试了构造函数和打开方法。我使用的一般代码如下所示:
var oldOpen = XMLHttpRequest.prototype.open;
XMLHttpRequest.prototype.open = function(){
this.withCredentials = true;
oldOpen.apply(this, arguments);
}
我还尝试在响应标头中设置 Access-Control-Allow-Credentials :
<add name="Access-Control-Allow-Credentials" value="true"/>
答案 0 :(得分:0)
我需要覆盖构造函数。要覆盖构造函数,您需要执行以下步骤:
var xp = XMLHttpRequest.prototype;
XMLHttpRequest = function (args) {
var obj = new xp.constructor(args);
obj.withCredentials = true;
return obj;
};
XMLHttpRequest.prototype = xp;