gpt4 book ai didi

iphone - NSURLConnection IOS 3G 问题

转载 作者:行者123 更新时间:2023-12-03 19:01:04 26 4
gpt4 key购买 nike

我在我的应用程序中使用了 NSURLConnection (异步),它在 wifi 上运行良好(iOS5 和 iOS6)。但这给 3G 带来了问题。当我运行应用程序 3G 连接时,我在 didReceiveData 方法中没有获取任何数据。

我已将日志放入我的委托(delegate)方法中,但在使用 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];

响应头如下

< 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

最佳答案

在解决这个问题几个小时后,我终于找到了一个可行的解决方案。NSMutableURLRequest 对象有一个方法来设置是否允许蜂窝网络:

[req setAllowsCellularAccess:YES];

尽管 NSURLRequest 类型的对象的默认值似乎是 YES,但它为我解决了问题。

希望这能帮助像我这样陷入这个问题并最终解决这个问题的人。

关于iphone - NSURLConnection IOS 3G 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13109874/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com