请求地址和接口加参数
NSString * urlStr =@"请求地址+接口";
NSMutableArray * array = [NSMutableArrayarrayWithCapacity:2];
[array addObject:@{@"productCode":@"参数",
@"productName":@"参数",
@"productRate":@"参数",
@"productFixrate":@"参数",
@"productStatus":@"参数"}];
[array addObject:@{@"productCode":@"参数",
@"productName":@"参数",
@"productRate":@"参数",
@"productFixrate":@"参数",
@"productStatus":@"参数"}];
NSDictionary * dic =@{
@"customerOutNo":@"参数",
@"customerName":@"参数",
@"productEntities":array};
//json数据转NSSttring
NSString * paramStr = [Self dictionaryToJson:dic];
[RequestManagerpostBossDemoWithUrl:urlStrparam:paramStr success:^(NSDictionary *dict) {
NSLog(@"%@",dict);
} fail:^(NSError *error) {
NSLog(@"%@",error);
}];
可放在工具类里面
#pragma mark - 字典转字符串
- (NSString*)dictionaryToJson:(NSDictionary *)dic
{
NSError *parseError =nil;
NSData *jsonData = [NSJSONSerializationdataWithJSONObject:dic options:NSJSONWritingPrettyPrintederror:&parseError];
return [[NSStringalloc] initWithData:jsonDataencoding:NSUTF8StringEncoding];
}
RequestManager.m 这个是数据请求类
+(void)postBossDemoWithUrl:(NSString*)url
param:(NSString*)param
success:(void(^)(NSDictionary *dict))success
fail:(void (^)(NSError *error))fail
{
AFHTTPSessionManager *manager = [AFHTTPSessionManagermanager];
manager.securityPolicy = [AFSecurityPolicypolicyWithPinningMode:AFSSLPinningModeNone];//不设置会报-1016或者会有编码问题
manager.requestSerializer = [AFHTTPRequestSerializerserializer]; //不设置会报-1016或者会有编码问题
manager.responseSerializer = [AFHTTPResponseSerializerserializer]; //不设置会报 error 3840
[manager.responseSerializersetAcceptableContentTypes:[NSSetsetWithObjects:@"application/json",@"text/json", @"text/javascript",@"text/html",@"text/plain",nil]];
NSMutableURLRequest *request = [[AFJSONRequestSerializerserializer] requestWithMethod:@"POST"URLString:url parameters:nilerror:nil];
[request addValue:@"application/json"forHTTPHeaderField:@"Content-Type"];
NSData *body =[paramdataUsingEncoding:NSUTF8StringEncoding];
[request setHTTPBody:body];
//发起请求
[[manager dataTaskWithRequest:requestcompletionHandler:^(NSURLResponse *_Nonnull response, id _Nullable responseObject,NSError * _Nullable error)
{
NSDictionary * dic = [NSJSONSerializationJSONObjectWithData:responseObjectoptions:NSJSONReadingMutableContainerserror:nil];
success(dic);
}] resume];
}