1

webService (JSON) を呼び出し、そのコンテンツのいくつかをパラメーターとして 2 番目の webService に渡し、次に 2 番目の web サービスを呼び出す必要があります。これに同じ可変データを使用できますか。

-(void)connectionDidFinishLoading:(NSURLConnection *)connection

コンテンツを取得する場所では、文字列のコンテンツを取得してから、responseData をクリアし、そこから 2 番目の webService を呼び出します。 PS: 両方の WebService のデータをフェッチするのに最小限の時間がかかるはずです 。もしそうなら、どうすればこれを達成できますか。ありがとうございました。

4

1 に答える 1

-1

同じ変数を使用して、2 つの同時サービスの応答データを保持できます。2 番目の Web サービスを再度呼び出すと、すべての NSURLConnection デリゲート メソッドが呼び出されます。このようにする必要があります。

    -(void)connection:(NSURLConnection*)connection didReceiveResponse:(NSURLResponse*)response {
        [self.webData setLength: 0];
        NSLog(@"Got Response");
    }
    -(void) connection:(NSURLConnection *) connection didReceiveData:(NSData *) data 
    {
        [self.webData appendData:data];
        NSLog(@"Got Data");
    }
    -(void) connectionDidFinishLoading:(NSURLConnection *) connection 
    {
        NSLog(@"Received Bytes: %d", [self.webData length]);
      // content needs to be segregated here and call the second service through custom delegate/block
    }

ここで、self.webData は、2 番目の Web サービスが呼び出されるまで値を保持します。 didReceiveResponseこの '[self.webData setLength: 0]' のような応答変数をクリアする必要がある場合、2 番目のサービスが応答を受信し始めるとメソッドが開始されます。

パラメータとして次のサービスに送信したいコンテンツは、connectionDidFinishLoadingメソッドから分離する必要があります

于 2013-10-09T07:38:12.163 に答える