我有以下 API 调用:
URL: /api/some-call
Method: PUT
PARAMS: No params
它只是一个简单的 PUT 方法。我正在尝试使用 AFNetworking 来做到这一点,不幸的是,我失败了。这是我现在拥有的:
AFHTTPClient *httpClient = [[AFHTTPClient alloc] initWithBaseURL:url];
NSMutableURLRequest *req = [httpClient requestWithMethod:@"PUT" path:@"" parameters:nil];
AFHTTPRequestOperation *operation = [[AFHTTPRequestOperation alloc] initWithRequest:req];
[operation setCompletionBlockWithSuccess:^(AFHTTPRequestOperation *operation, id responseObject) {
NSLog(@"Success");
} failure: ^(AFHTTPRequestOperation *operatn, NSError *error) {
NSLog(@"Failure");
}];
NSOperationQueue *queue = [[NSOperationQueue alloc] init];
[queue addOperation:operation];
然而,这是行不通的。这是为什么?此外,请求中path
应该包含什么?PUT
我已经尝试了几件事,这就是我现在所拥有的,我认为应该接近正确的。
最后一个问题:AFNetworking
不使用ARC
. 这是否意味着我仍然需要在语句autorelease
的末尾?NSOperationQueue
编辑:
这是错误NSLog
:Failure Error Domain=com.alamofire.networking.error Code=-1011 "Expected status code in (200-299), got 409" UserInfo=0x7a91fb0 {NSErrorFailingURLKey=*the url*/api/some-call, NSLocalizedDescription=Expected status code in (200-299), got 409}