ios - 如何在 POST 请求的 AFNetworking 4.0 中添加标头?
问题描述
我这样做是为了在 AFNetworking 4.0 中定义标头
NSMutableDictionary *headers = [[NSMutableDictionary alloc]init];
[headers setValue:[NSString stringWithFormat:@"Bearer %@",[defaults valueForKey:@"Token"]] forKey:@"Authorization"];
[manager POST:[NSURL URLWithString:path].absoluteString parameters:parameter headers:headers progress:nil success:^(NSURLSessionTask *task, id responseObject)
{
}
这是 AFNetworking 4.0 中定义的新 POST 方法
- (NSURLSessionDataTask *)dataTaskWithHTTPMethod:(NSString *)method
URLString:(NSString *)URLString
parameters:(nullable id)parameters
headers:(nullable NSDictionary <NSString *, NSString *> *)headers
uploadProgress:(nullable void (^)(NSProgress *uploadProgress)) uploadProgress
downloadProgress:(nullable void (^)(NSProgress *downloadProgress)) downloadProgress
success:(nullable void (^)(NSURLSessionDataTask *task, id _Nullable responseObject))success
failure:(nullable void (^)(NSURLSessionDataTask * _Nullable task, NSError *error))failure
{
}
这样做时,这向我显示错误“[<__NSDictionary0 0x10c62a870> setValue:forUndefinedKey:]:此类不符合键授权的键值编码。”
请告诉我正确的解决方案。
提前致谢。
解决方案
我现在使用 AFN 4.0,但我也在管理器上添加了标题,如下所示:
AFHTTPSessionManager *sessionManager = [AFHTTPSessionManager manager];
[sessionManager.requestSerializer setValue:bearerToken forHTTPHeaderField:@"Authorization"];
and GET/POST/PUT/DELETE header I send @{} to backend
我希望我能帮助你
推荐阅读
- python - 如何按特定键对键值存储列表进行排序?
- c# - c# DevExpress 网格关系:如何让 GridView 显示行数?
- python - 创建一个基于其他两个系列的新系列
- c - 为什么循环没有停止?
- oracle - 从 oracle 中获取数据时的日期到时间戳问题
- python-3.x - 如何使循环或另一个函数一次又一次地重复相同的for循环?
- javascript - 自定义组件未在此基本 ReactJS 应用程序上正确呈现
- google-apps-script - 如何复制和粘贴行,然后删除上面的行以保持表单提交的公式格式?
- matlab - 梯度下降代码错误 - 对两个 theta 得到相同的答案
- c++ - QDoc可以生成文档,但是内容不全