我有一个react应用程序,其中包含一个javascript方法,该方法将数据发布到服务器方法。此方法在阳光下的每个浏览器中都可以正常工作...除了IE11(我知道(。不幸的是,IE11支持是该项目的要求。
iis日志显示400(不良请求(http状态代码。
我选择不使用fetch((,因为它与IE11不兼容,我宁愿避免诉诸于单个浏览器的单个方法等外部库。
我尝试了一些Content-Type
标头值(Application/json和X-url-Form编码(,并且还尝试了可能与之相关的各种其他标题(Pragma,Cors,CORS-即使不是交叉孔,Cache-Control等(。
handleSubmit(event) {
const booking = {
'key1': 'value1',
'key2': 'value2',
'key3': 'value3',
};
const xhr = new XMLHttpRequest();
const url = "api/Booking/AddBooking";
xhr.open("POST", url);
xhr.setRequestHeader("Content-Type", "application/json;charset=UTF-8");
xhr.send(JSON.stringify(booking));
xhr.onreadystatechange = () => {
if (xhr.readyState === 4 && xhr.status === 200) {
var response = JSON.parse(xhr.responseText);
this.setState({
bookingResponse: response,
showModal: true
});
}
}
event.preventDefault();
}
我知道外部库与IE11一起使用,因此必须使用Vanilla JavaScript解决此问题,我只是找不到它是什么。有什么想法吗?
问题与某些变量值有关。我正在使用ES6字符串插值(即背滴度(,IE中不支持。