我已經實現了AFNetworking框架,但我試圖找出一種方法,使AFJSONRequestOperation函數在一個單獨的類,並從我個人的視圖控制器調用它。返回JSON與AFJSONRequestOperation
我所做的是創建一個類方法,該方法將字典和webservice url中的參數。我希望這能夠從成功塊返回JSON數組和Http代碼,但是這不起作用。
如果我將公共函數更改爲返回類型並在方法結束時返回一個值,它將在成功塊完成之前返回。
有什麼建議嗎?
+ (void)RequestJSON:(NSDictionary *)params:(NSString *)webServicePath {
NSURL *url = [NSURL URLWithString:@"http://api.website.com/"];
AFHTTPClient *httpClient = [[AFHTTPClient alloc] initWithBaseURL:url];
NSMutableURLRequest *request = [httpClient requestWithMethod:@"POST" path:webServicePath parameters:params];
NSLog(@"%@", request);
AFJSONRequestOperation *operation = [AFJSONRequestOperation JSONRequestOperationWithRequest:request
success:^(NSURLRequest *request, NSHTTPURLResponse *response, id JSON)
{
NSString *httpCode = [[JSON valueForKey:@"meta"]valueForKey:@"code"];
NSLog(@"code=%@", httpCode);
}
failure:^(NSURLRequest *request , NSURLResponse *response , NSError *error , id JSON)
{
NSLog(@"Failed: %@",[error localizedDescription]);
}];
[operation start];
}
可以讓你使用的例子嗎?我怎麼能做這個調用,並從'didReceiveJSONResponse'返回? –
你能展示如何使用它?我試圖做一些謊言:在my.h文件中我有JSONRequest *請求;並且我還將該代理設置爲.h文件,如。在我的.m文件中,我做了一些叫做:request.delegate = self;並且我請求RequestWithMetho並傳入正確的參數來調用該方法,但是此方法不想處理該方法調用。您能否請您詳細解釋如何在您的視圖控制器中使用此文件。請幫忙。謝謝你jcrowsen –
Pavan