我正在使用AjaxPro。我在调用GetReturns()时得到了这个错误
拒绝设置不安全的标题“连接”
Report.Areas_Report.GetReturns(30, aoData, (response) => {
if (response.error == null) {
var myObject = response.value;
fnCallback(myObject);
} else {
$.growl.error({
message: "An error occurred. Please try again."
});
}
$(_overlayElementId).remove();
});[AjaxMethod]
public DataTableResult GetReturns(int days, List<DataTableAjaxPostModel> model = null)
{
var dataTableRequest = DataTableModelBinder.FilterDateTableRequest(model);
var result = reportsService.GetReturns(warehouseId, days, dataTableRequest);
return result;
}发布于 2019-02-08 12:40:36
这是Chrome更新引起的一个问题。不幸的是,AjaxPro构建还没有更新以反映这一点。仍然有一个简单的方法可以让它顺利通过。您只需要拥有自己版本的AjaxPro,并从代码中删除违规行。
您可以从AjaxPro网站https://github.com/michaelschwarz/Ajax.NET-Professional下载该代码库。您需要选择下载为zip,解压缩文件,将项目复制到您的解决方案,然后将您的web项目的引用更改为来自这个新项目的AjaxPro。
接下来,在名为core.js的项目根目录中打开文件,然后转到第445行。导致问题的整个块需要删除或注释掉。
if(!MS.Browser.isIE) {
this.xmlHttp.setRequestHeader("Connection", "close");
}保存文件,生成错误就会消失。请注意,您不需要上传core.js文件,因为它是一个嵌入式资源,它只是一个新的AjaxPro.dll,需要放在网上。
还有一点要注意的是,这个项目构建为AjaxPro.dll,而不是AjaxPro.2.dll的新名称,尽管它是.net框架2+的正确版本--您可以更改构建名,也可以更改web.config文件中的名称。所以,例如
<sectionGroup name="ajaxNet">
<section name="ajaxSettings" type="AjaxPro.AjaxSettingsSectionHandler,AjaxPro.2" requirePermission="false" restartOnExternalChanges="true"/>
</sectionGroup>会变成
<sectionGroup name="ajaxNet">
<section name="ajaxSettings" type="AjaxPro.AjaxSettingsSectionHandler,AjaxPro" requirePermission="false" restartOnExternalChanges="true"/>
</sectionGroup>提到AjaxPro.2的配置文件中的任何一个...and都需要更改为AjaxPro
https://stackoverflow.com/questions/53636214
复制相似问题