2012-05-16 10 views
23

Yalnızca NSHTTPURLResponse'yi içeren geri arama bloğundan, AFJSONRequestOperation için ham yanıt verilerine erişmem gereken bir durum var. StatusCode'u NSHTTPURLResponse'den alabiliyorum, ancak ham verilere ulaşmanın bir yolunu göremiyorum. Bu işlemin başarısızlık geri arama bloğundan herkesin bunu bilmesinin iyi bir yolu var mı? Yalnızca HTTP üstbilgisi bilgisi içerenAFJSONRequestOperation geri çağrısında NSHTTPURLResponse'den yanıt verisi nasıl alınır?

cevap

35

NSHTTPURLResponse; vücut verisi yok. Yani hayır, bu imkansız olurdu. Bu kod üzerinde herhangi bir denetiminiz varsa, bloğun veya yöntemin işlemi kendiliğinden geçmesini ve responseData veya responseJSON'u almasını sağlayın.

+0

Matt, düşündüğüm şey buydu ve ben de ResponseData'ya ulaşma işlemine atıfta bulundum, ama eminim ki bu şekilde beceriksiz hissediyor. ResponseData yanı sıra NSHTTPURLResponse döndüren mevcut olana ek olarak alternatif bir yöntem eklemeyi düşündünüz mü? –

+0

Hangi yöntemden bahsediyorsunuz? Geridönüşümleri olan tüm AFN yöntemleri, işlemin durumu hakkında bilmeniz gereken herşeyi - yani, işlem nesnesinin kendisi, diğer birkaç göze çarpan kısımla birlikte - döndürür. – mattt

+0

Özellikle JSONRequestOperationWithRequest yöntemine başvuruyorum: başarı: başarısızlık: –

-2

Eski soruyu, ama yine de ...

Sen operasyon nesnesine almak gerekmez, kolayca gibi bir şey yapabilirsiniz: geri arama aldığında JSON id ile

NSData * data = [NSJSONSerialization dataWithJSONObject:JSON options:0 error:nil]]; 

.

+0

JSON nesnesi, hatalı json nedeniyle başarısız olabileceğinden, hata geri çağırma engellemesinde başarısız olabilir. –

İlgili konular