如何使用AFNetworking添加请求标头?

viv*_*iya 2 iphone ios afnetworking-2

我想在我的应用程序中使用AFNetworking类来与服务器通信.

我是这个图书馆的新手.这是我的代码:

 NSDictionary *user=[[NSDictionary alloc]initWithObjectsAndKeys:@"hiteshp",@"userName",@"12345^",@"password", nil];
AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];
AFHTTPRequestSerializer *requestSerializer = [AFHTTPRequestSerializer serializer];
[requestSerializer setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
manager.requestSerializer=requestSerializer;   //[AFJSONRequestSerializer serializer];
[manager POST:@"myURL" parameters:user success:^(AFHTTPRequestOperation *operation, id responseObject) {
    NSLog(@"JSON: %@ %@", responseObject);
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
    NSLog(@"Error: %@", error);
}];
Run Code Online (Sandbox Code Playgroud)

我想为此请求添加标头.我试过但它不起作用.如果我写了注释行,那么请求已完成,但我还想再添加一个字段"Authorization"来重新设置.Andhow打印请求标题?

Joa*_*ona 8

我知道现在为时已晚,但这里的代码可以满足您的需求

NSString *finalyToken = [[NSString alloc]initWithFormat:@"Bearer %@",user.token];
 AFHTTPRequestOperationManager *manager =
[[AFHTTPRequestOperationManager alloc] initWithBaseURL:[NSURL URLWithString:@"https://server1.appscserver.de/api"]];
[manager.requestSerializer setValue:finalyToken forHTTPHeaderField:@"Authorization"];
Run Code Online (Sandbox Code Playgroud)

希望它可以帮助某人


小智 5

在代码中使用它:

AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];
    manager.responseSerializer.acceptableContentTypes = [NSSet setWithObjects:@"text/html", @"application/json", nil];

//Authorization    
[manager.requestSerializer setAuthorizationHeaderFieldWithUsername:userName password:password];
Run Code Online (Sandbox Code Playgroud)