我在AFHttpRequestOperation中找不到任何可以添加HTTP头的API.看起来AFHttpClient有这种支持,但所有示例似乎都使用AFHttpClient来发布数据而不是下载.
如何向AFHttpRequestOperation添加自定义Http Header或身份验证标头?
另外,有没有办法从内存中的HTTP服务器下载数据作为NSData,而不是在使用AFHttpRequestOperation时直接将数据写入文件?
你是正确的,AFHTTPRequestOperation中没有直接的方法来添加HTTP头,幸运的是这是故意的.
AFHTTPRequestOperation的设置起初可能看起来很麻烦,但是一旦你使用它就会很有意义.
创建AFHTTPClient. AFHTTPClient *client = [AFHTTPClient clientWithBaseURL:[NSURL URLWithString:@"http://mysite.com]];
使用适当的方法在AFHTTPClient中设置标题:
[client setDefaultHeader:@"key" value:@"value"];
[client setAuthorizationHeaderWithUsername:@"username" password:@"password"];
[client setAuthorizationHeaderWithToken:@"token"];
使用AFHTTPClient创建NSURLRequest,这是关键
NSURLRequest *request = [client requestWithMethod:@"someMethod" path:@"somePath" parameters:nil];
使用NSURLRequest创建AFHTTPRequestOperation
AFHTTPRequestOperation *operation = [[AFHTTPRequestOperation alloc] initWithRequest:request];
从那里你就定了.您可以使用- setCompletionBlockWithSuccess:failure:或者您可以使用[operation start]并执行其他操作.但是,无论您想要什么,这都应该与您的HTTP标头完美配合.
| 归档时间: |
|
| 查看次数: |
3010 次 |
| 最近记录: |