[英]how to make rest api call with afnetworking iOS
首先,我使用高级Rest Client尝试了相同的Web服务。 它工作正常。 但我很难在afnetworking中编写等效内容。
这是Web服务。
http://devmybartersite.pantheon.io/myrestapi/barter_user/create?str= {"email":"sahildgfdffdfduuy@gmail.com","pass":"hello"}
我能够在chrome的高级Rest Client中获得响应。 另外需要在标头中设置X-CSRF-Token。
这是我的代码
- (IBAction)pressed:(id)sender {
NSLog(@"You entered %@",self.username.text);
AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];
//header fields
[manager.requestSerializer setValue:@"vZu-YUFWLzIdFIn7VDoA6hV9IhrYe-BimkC1ncRdojU" forHTTPHeaderField:@"X-CSRF-Token"];
[manager.requestSerializer setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
NSDictionary *params = @ {@"user":@"kjhkhkjhmnbbnjhio@gmail.com", @"pwd":@"hello" };
[manager POST:@"http://dev-my-barter-site.pantheon.io/myrestapi/barter_user/create" parameters:params success:^(AFHTTPRequestOperation *operation, id responseObject) {
NSLog(@"JSON: %@", responseObject);
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
NSLog(@"Error: %@", error);
}];
}
默认的requestSerializer
会将您的参数转换为以下格式user=kjhkhkjhmnbbnjhio@gmail.com&pwd=hello
。 为了获得JSON格式的请求正文,请使用AFJSONRequestSerializer
:
manager.requestSerializer = [AFJSONRequestSerializer serializer]; [manager.requestSerializer setValue:@"..." forHTTPHeaderField:@"..."]; [manager.requestSerializer setValue:@"..." forHTTPHeaderField:@"..."];
比您发送的请求:
[manager POST:....]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.