我使用 jQuery 的 $.ajax() 方法获取大约 26KB 的 JSONP 数据。
从我测试过的每个位置(工作、家庭、手机等),数据都能在 FF、Chrome、IE 和 Safari 中完美返回。
唯一的异常(exception)是我的一位客户,他试图从公司的防火墙后面访问该网站。不幸的是,我无法让他向我提供响应,但我知道我的成功函数正在执行 - 所以响应似乎以某种方式被损坏,因为引用返回的 JSON 的任何内容都未定义。
我的问题是:防火墙是否可能对 XHR 响应的长度施加限制?还有其他一些我可能遗漏的明显解释吗?
非常感谢。
更新:
对于任何偶然发现这篇文章的人...我完全忘记了 AJAX 调用是使用非标准端口对我的开发服务器之一进行的。很肯定这就是他的防火墙不喜欢它的原因。
感谢所有发表评论的人。
最佳答案
我打算建议,除了你弄乱 URL 之外,一些防火墙还可以主动过滤请求,这可能会从你的请求中删除相关的 Java 脚本调用(偏执的网络造就了独特的开发环境)。
请注意,将来当他们的应用程序在企业环境中在这里、那里工作而不是在那里工作时,可能会感到困惑。
关于javascript - AJAX 调用在公司防火墙后面失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5737270/