-2

API ドキュメントには、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>
4

2 に答える 2

0

これが私が試すことです:

urlString は有効な URL ですか? ブラウザーで機能するからといって、それが有効な URL であるとは限りません。ブラウザーは NSURL よりも寛容である可能性があります。[NSURL URLWithString:urlString]によって作成されたオブジェクトが ではないことを確認して、これをテストしますnil

connection:didFailWithError:デリゲート メソッドはエラー パラメーターとして何を返しますか?

デリゲートで呼び出されますかconnection:didReceiveAuthenticationChallenge:- アプリとサーバー間の認証の問題ですか?

オブジェクトを保持していconnectionますか、それとも ARC がオブジェクトを解放していますか (ほとんどありません。接続中に接続がハングアップすることは確かですが、おそらく確認する必要があります)。

于 2012-12-13T13:07:35.787 に答える
0

問題は解決しませんが、タイムアウトを 60 に増やします。上記の回答にあるように URL を確認してください。

于 2012-12-13T13:18:24.733 に答える