使用 AFNetworking 在 iOS 中生成 POST 请求
Generate POST request in iOS using AFNetworking
我被要求构建一个基于 Fedena(学校管理系统)的 iOS 应用程序。他们的 API 示例代码在 HTML-JS 或 RUBY 中。我要做的是以编程方式传递参数(令牌、URI 等),在发送它们时,请求将 return 一个 XML 文件,然后我可以在表格视图。
- 如何使用 AFNetworking 通过代码传递参数?
- 如何获取 XML 文件?
这是提供的 API 代码示例:
<html>
<head>
xhr.open('GET', fedena_server+"/api/users/"+username);
xhr.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
xhr.setRequestHeader('Authorization', 'Token token="'+token+'"');
xhr.send();
......
首先,您必须将 AFNetworking 添加到您的项目中。最简单的方法是使用 pods 信息可以在这里找到:https://guides.cocoapods.org/using/getting-started.html
以下代码将获取上述 API 调用的响应:
NSString *url = [NSString stringWithFormat:@"%@/api/users/%@",fedenaServer,username];
AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];
NSString *token = [NSString stringWithFormat:@"Token token=%@",token];
[manager.requestSerializer token forHTTPHeaderField:@"Authorisation"];
[manager GET:url parameters:nil success:^(AFHTTPRequestOperation *operation, id responseObject) {
// your code to parse the response
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
NSLog(@"Error: %@", error);
}];
您需要做一些研究才能使整个工作正常进行,例如解析 XML 响应
给你更多的东西会为你做这份工作 :P
希望对你有帮助。
我被要求构建一个基于 Fedena(学校管理系统)的 iOS 应用程序。他们的 API 示例代码在 HTML-JS 或 RUBY 中。我要做的是以编程方式传递参数(令牌、URI 等),在发送它们时,请求将 return 一个 XML 文件,然后我可以在表格视图。
- 如何使用 AFNetworking 通过代码传递参数?
- 如何获取 XML 文件?
这是提供的 API 代码示例:
<html>
<head>
xhr.open('GET', fedena_server+"/api/users/"+username);
xhr.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
xhr.setRequestHeader('Authorization', 'Token token="'+token+'"');
xhr.send();
......
首先,您必须将 AFNetworking 添加到您的项目中。最简单的方法是使用 pods 信息可以在这里找到:https://guides.cocoapods.org/using/getting-started.html
以下代码将获取上述 API 调用的响应:
NSString *url = [NSString stringWithFormat:@"%@/api/users/%@",fedenaServer,username];
AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];
NSString *token = [NSString stringWithFormat:@"Token token=%@",token];
[manager.requestSerializer token forHTTPHeaderField:@"Authorisation"];
[manager GET:url parameters:nil success:^(AFHTTPRequestOperation *operation, id responseObject) {
// your code to parse the response
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
NSLog(@"Error: %@", error);
}];
您需要做一些研究才能使整个工作正常进行,例如解析 XML 响应 给你更多的东西会为你做这份工作 :P 希望对你有帮助。