【问题标题】:ASMX Web Service failed to send response back to browserASMX Web 服务无法将响应发送回浏览器
【发布时间】:2014-07-16 15:34:55
【问题描述】:

我们最近迁移到一个新系统并看到一个奇怪的问题,但首先,我们正在使用 javascript、经典 asp 和 asmx Web 服务(直到我们可以重新编码)。

我们的 Web 服务是在 IIS 7.5 上各自的应用程序池中设置的。有问题的 Web 服务在 .net 4 中编码,应用程序池在 .net 4“集成”中设置。

我们有多个客户网址访问我们的网络服务所在的另一个域。 该应用程序使用 javascript ajax 调用来访问我们的后端 asp 页面。 示例:

https://DomainForCustomer/CustomersPage --> executes javascript ajax --> Classic ASP Code -->

Set xmlhttp = server.Createobject("MSXML2.XMLHTTP")
xmlhttp.Open "POST",postUrl,false
xmlhttp.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
xmlhttp.send DataToSend

where postURL = https://MainDomain/WebService/WebService.asmx/Method

我还应该提到我为 GET/POST 请求配置了 Web 服务。

因此,我们目前遇到的情况是短请求工作正常且快速。更长的请求(大约 5-10 分钟)永远不会返回到浏览器。

当我在 iis 中的同一客户站点下设置相同的 Web 服务代码时,它运行良好。我将打印语句设置到 Web 服务上的文件中,以查看我的进程何时完成,并可以查看数据何时应返回到浏览器,但网站似乎没有收到它。

是否有人对此有任何想法或能够指出任何可能有帮助的设置。 我确实研究了跨域的东西,但这似乎更多地与javascript有关,而不是asp(反正我被告知)。

最后,在我们当前的架构下,我们的网络服务器正在通过负载均衡器来卸载 ssl,所以我不确定这是否与它有任何关系。

【问题讨论】:

    标签: asp-classic iis-7.5 asmx


    【解决方案1】:

    所以经过更多测试,确定我们的 ssl 卸载配置不正确。在我们的系统中进行更改后,这个运行时间较长的进程开始运行得更好。

    此外,我在对浏览器的响应中返回了 160k + 个字符,因此我们将其添加到 IIS 配置中:

    <requestLimits maxAllowedContentLength="100000000" />
    

    我知道这对我们的配置更为特殊,但我希望这对将来的其他人有所帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-06-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-10-22
      相关资源
      最近更新 更多