API doc声明NSURLConnection :: initWithRequest请求传递了url参数。在服务器上没有收到任何参数有效,并且可以从同一台机器上的浏览器工作。腐烂的苹果发生了什么事?
NSString* urlString = <valid url working from browser>;
NSURLRequest* request = [[NSURLRequest alloc] initWithURL: [NSURL URLWithString:urlString] cachePolicy: NSURLRequestReloadIgnoringLocalCacheData timeoutInterval: 10];
NSURLConnection* connection = [[NSURLConnection alloc] initWithRequest:request delegate:self startImmediately:YES];
<Connection validated here>
<Delegate methods implemented elsewhere>
答案 0 :(得分:0)
以下是我要尝试的内容:
您的urlString是否是有效的网址?仅仅因为它在浏览器中有效并不意味着它是一个有效的URL - 浏览器可能比NSURL更宽容。通过检查[NSURL URLWithString:urlString]
创建的对象不是nil
来测试此内容。
您的connection:didFailWithError:
委托方法作为错误参数返回什么?
在您的代理中调用connection:didReceiveAuthenticationChallenge:
- 这是您的应用与服务器之间的身份验证问题吗?
你是保留你的connection
对象还是ARC发布它(非常不可能,我很确定连接会在连接时挂起但是你应该确定)。
答案 1 :(得分:0)
它不会解决您的问题,但会将超时时间增加到60.请按照上面的答案检查网址。