如果通过代理服务器访问,Ajax WebApplication 会失败

如果通过代理服务器访问,Ajax WebApplication 会失败

我们的开发团队已经构建了一个 WebApp,其目的是选择地图上的位置。

有一个在 ASP.Net 2.0 中开发的用户控件,如果应用程序直接通过浏览器访问,它可以正常工作,但如果浏览器设置为使用代理服务器,则除地图之外,所有内容都可以正常加载。

这些地图是由 vdstechnology 公司出品的一款名为 ASPmap 的产品呈现的。

我不知道是什么导致了这种行为,但我发现查看服务器的请求和响应时,当您使用代理时它们是不同的。

发生的变化如下:

未使用代理: 全尺寸无代理

白代理:全尺寸 使用代理

如您所见,没有代理的标头使用相关请求,而使用代理的标头则使用完整的 URL。

这可能是问题所在吗?或者我还能做什么来诊断为什么会发生这种情况。

顺便说一句,使用 ISA 服务器的客户向我们报告了此行为。我已经使用我们的 squid 代理服务器复制了该问题。

非常感谢您的宝贵时间,我非常感谢任何可以引导我找到解决方案的见解或指示

答案1

这可能是性能问题(由于代理服务器导致的延迟)吗?

答案2

社区对此提出了批评,所以......

我认为您看到的是客户端发送给代理的标头。当客户端与代理通信时,它始终会发出完全合格的请求;当代理与后端服务器通信时,它通常会将其转换回相对请求。

从客户端和服务器端同时获取 Netmon/Wiresharek 捕获将有助于更好地理解行为 - 可能是代理引入的额外标头(例如 Via)导致有关客户端 AJAX 组件中的标头顺序或内容的假设出现问题,除非两个代理都对服务器端响应的某些方面感到不安并且正在“保护”客户端。

相关内容