0

我们通常使用以下方法成功地从我们的服务器加载 JSON 编码的数据:

NSError* error;
NSData* data = [NSData dataWithContentsOfURL:[NSURL URLWithString:path] 
                                     options:NSDataReadingUncached
                                       error:&error];

(在后台线程上以避免阻塞主线程。)但是,随着服务器负载的增加,我们最近看到了一个无效但非错误(error == nil)的服务器响应:

 <html><body><script>document.cookie='ggggggg=00268082ggggggg_00268082;
 path=/';window.location.href=window.location.href;</script></body></html>

重试通常会成功下载预期的 JSON 编码数据;问题似乎是服务器端的。三个问题:

1)有人认识这个服务器响应吗?

2)我们的服务器是否试图创建一个cookie而不是返回我们的文件/数据!?

3) 如果是这样,我们应该从哪里了解如何避免来自服务器的这种随机 cookie 响应?

4

1 回答 1

1

根据留言板流量,我们能够确认问题可以通过多种方式(应用程序、浏览器或命令行)重现——该问题与 iOS 或我们的应用程序代码无关。我们能够通过 curl 使用以下形式从命令行偶尔重现该问题:

curl -D - your-test-url-here -s

经过我们 ISP 的进一步调查,他们确定无效 HTTP 响应的最可能原因是他们的 DDoS 攻击防护。在他们重置受影响的服务器后,问题得到了解决。

于 2013-09-27T01:49:19.547 回答