NSURLConnection IOS 3G问题

Jit*_*shW 5 iphone nsurlconnection 3g-network

我在我的应用程序中使用了NSURLConnection(异步),它在wifi(iOS5和iOS6)上工作正常.但它创造了3G的问题.当我运行我的应用程序3G连接,然后我没有在我的didReceiveData方法中获得任何数据.

我已经在我的委托方法中添加了日志,但在使用3G时,请求正在超时.可能是什么问题.

编辑:在服务器端 - >它显示我的请求已发送到服务器和服务器也已将响应发送到客户端.

编辑2:

我写的代码如下.

NSURL *url = [NSURL URLWithString:@"someURL"];

NSMutableURLRequest *req = [[NSMutableURLRequest alloc] initWithURL:url     
 cachePolicy:NSURLRequestUseProtocolCachePolicy                                   
 timeoutInterval:40.0];

//[req setHTTPShouldUsePipelining:YES];

[req setValue:@"x-www-form-urlencoded" forHTTPHeaderField:@"Content-Type"];
[req setValue:@"someValue" forHTTPHeaderField:@"Accept"];
[req setValue:@"myCrdentails" forHTTPHeaderField:@"Authorization"];
[req setHTTPMethod:@"GET"];

[[NSURLConnection alloc] initWithRequest:req delegate:self startImmediately:YES];
Run Code Online (Sandbox Code Playgroud)

响应标头如下

< HTTP/1.1 200 OK
< X-Powered-By: Express
< Access-Control-Allow-Origin: *
< Content-Type: text/event-stream; charset=utf-8
< Connection: keep-alive
< Transfer-Encoding: chunked
Run Code Online (Sandbox Code Playgroud)

whi*_*gle 0

尝试使用Reachability框架并检查 3G 是否返回 false。如果它确实返回 true 并且您仍然超时,请尝试转到同步模型并查看会发生什么。可能连接工作正常,但某些东西拦截了您的回调。