requestWithMethod實際上並沒有完成調用,它只是返回給你一個NSMutableURLRequest。您需要接受該請求並進行AFHTTPRequestOperation。您可以在此對象上設置成功/失敗塊,然後運行start方法。
NSMutableDictionary *rus = [[NSMutableDictionary alloc] init];
[rus setValue:@"1211" forKey:@"id"];
[rus setValue:@"33" forKey:@"man"];
NSMutableURLRequest *request = [[AFHTTPRequestSerializer serializer] requestWithMethod:@"POST" URLString:@"http://mysite.co/service.php" parameters:rus];
AFHTTPRequestOperation *operation = [[AFHTTPRequestOperation alloc] initWithRequest:request];
[operation setCompletionBlockWithSuccess:^(AFHTTPRequestOperation *operation, id responseObject) {
// Code for success
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
//Code for failure
}];
[operation start];
所有這些都說了,你使用的是AFNetworking的過時版本嗎?您引用的方法已棄用。
- (NSMutableURLRequest *)requestWithMethod:(NSString *)method
URLString:(NSString *)URLString
parameters:(id)parameters
error:(NSError *__autoreleasing *)error
以上是使用的正確方法。你應該傳入一個錯誤對象。
最後,一個更簡單的方法來完成你與AFNetworking 2.0幹什麼低於:
AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];
[manager POST:@"http://mysite.co/service.php" parameters:rus success:^(AFHTTPRequestOperation *operation, id responseObject) {
// Code for success
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
// Code for failure
}];
我正在使用'AFNetworking 2',但我傳遞的參數不在服務器上讀取。因此,我想在發送之前對它進行編碼。我怎樣才能做到這一點 ? – Illep