2

これがsendsynchronousrequestが成功したかどうかを確認する正しい方法であるかどうかを知りたかっただけです:

NSData* returnData = [NSURLConnection sendSynchronousRequest:req returningResponse:nil error:nil];
if(returnData == nil)
{
    //code showing an alertView for example
}
else
{
    //do somthing else
}

フィードバックをお寄せいただきありがとう
ございます

4

3 に答える 3

0

正しい方法は、エラー変数を定義して nil に設定し、nsurlconnection でその参照を使用して、その参照メモリ位置でエラーが返されるようにすることです。メモリが nil であることを確認し、nil 成功の場合は、有効なメモリがある場合はエラーです。

NSError *error;
NSData *data = [NSURLConnection sendSynchronousRequest:request
                                     returningResponse:&response
                                                 error:&error];

if (error ==nil ) {
    // Success mechanism
}
else
{
 //Failure Mechanism
}
于 2013-04-24T14:55:31.730 に答える
0

エラーに何かを渡したいと思います:

NSData* returnData = [NSURLConnection sendSynchronousRequest:req returningResponse:nil error:&error];

if(error != 0)
  // good to go
else
  // error

しかし、私は間違っている可能性があります。すぐにそれをちらっと見ただけです。

私はこの投稿を見ましたが..彼は同様のことを求めていると思います:

http://discussions.apple.com/thread.jspa?threadID=1647649

于 2010-09-15T15:41:17.383 に答える
0

HTTP を使用している場合は、ステータス コードも確認できます。例えば:

NSHTTPURLResponse *response;
NSError *error;
NSData *data = [NSURLConnection sendSynchronousRequest:request
                                     returningResponse:&response
                                                 error:&error];

if ((nil != data) && (200 == [response statusCode])) {
    // Process data
}
于 2013-02-25T08:47:02.230 に答える