我已经开发了一个可以调用Ajax的网站,该网站在我的Visual Studio中可以正常工作,但是在IIS上发布时却出现错误。
我在WebForm.aspx文件中的C#代码是
[WebMethod]
public static string[] GetDistricts()
{
// some arcobjects code here libraries version 10.1
}
我的Javascript代码是
$.ajax({
type: "POST",
data: "{}",
url: "WebForm.aspx/GetDistricts",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (msg) {
// do something with the msg string received from succesful ajax call
},
error: function (response) {
alert(response.responseText);
},
failure: function (response) {
alert("Error");
}
它在Chrome中显示错误“ 无法加载资源:net :: ERR_CONNECTION_RESET ” 并在IE11 XMLHttpRequest:网络错误0x2ef3中,由于错误00002ef3 而无法完成操作。
我不知道为什么Ajax不能在IIS上运行并且在Visual Studio中的本地调试下可以正常工作。 请帮忙。我正在使用VS2012和Jquery 3.3.1
其他信息: Web配置文件
<configuration>
<system.web>
<compilation debug="true" targetFramework="4.0" />
</system.web>
<system.web.extensions>
<scripting>
<webServices>
<jsonSerialization maxJsonLength="50000000"/>
</webServices>
</scripting>
</system.web.extensions>
</configuration>
我的代码有一个很大的json响应,这就是为什么我在webcofig中添加maxJsonLength =“ 50000000”
错误图片: enter image description here
我注意到的另一件事,当我使用项目属性“本地Web服务器”调试代码时,它给我的错误与使用IIS运行时相同,但是当我使用属性“使用IIS Express”进行调试时,它会调试很好。