網(wǎng)絡(luò)請(qǐng)求

AFNetworking 網(wǎng)絡(luò)請(qǐng)求

static AFHTTPSessionManager *_manager = nil

+(AFHTTPSessionManager *)defaultHTTPManager{

static dispatch_once_t ?onceToken;

dispatch_once(&onceToken,^{
_manager = [AFHTTPSessionManager manager];

_manager .responseSerializer= [AFHTTPResponseSerializer serializer];

_manager.requesetSerializer .timeoutInterval = 30.0;

});

return _manager;

}

方法:

+(void) getMessageWithParameters :(NSDictionary *)parameters complete:(void(^)(NSArray *dataArray))complete{
AFHTTPSessionManager *manager = [self defaulHTTPManager];

NSMutableArray *dataArray = [[NSMutableArray alloc] initWithCapacity:0];

[manager POST:KClassURL parameters:parameters progress:nil success:^(NSURLSessionDataTask *_Nonnull task,id _Nullable responseObjiect){

NSDictionary *dic = [NSJSONSerialization JSONObjectWithData:responseObject options:NSJSONReadingMutableContainers error:nil];

id data = dic[@"data"];

if([data isKindofClass:[NSarray claas]]){

NSArray *mesageArray = dic[@"data"];

for (NSDictionary *messDic in messageArray){
? ? ? ?MyModel *model = [Mymodel alloc] initClassMyModelWithDictionary:messDic];

[dataArray addobject:model];

}

complete(dataArray);

}else if ([data isKindofClass:[NSDictionary class]]){

NSDictionary *messageDic = dic[@"data"];

MyModel *model = [Mymodel alloc] initClassMyModelWithDictionary:messDic];

[dataArray addobject:model];

complete(dataArray);

else{

complete(dataArray):

}

}failure:^(NSURLSessionDataTask *_Nullabel task,NSError *_Nonnull error){

}];


+(void) getMessageWithParameters :(NSDictionary *)parameters success:(void(^)(BOOL success)) success{

AFHTTPSessionManager *manager = [self defaulHTTPManager];

[manager POST:KClassURL parameters:parameters progress:nil success:^(NSURLSessionDataTask *_Nonnull task,id _Nullable responseObjiect){

NSDictionary *dic = [NSJSONSerialization JSONObjectWithData:responseObject options:NSJSONReadingMutableContainers error:nil];

if([dic[@"data"] integerValue == 1{

success (YES);

}esle{

success(NO):

}

}failure:^(NSURLSessionDataTask *_Nullabel task,NSError *_Nonnull error){

success(NO);

}];

}

使用AFNetworking出現(xiàn)報(bào)錯(cuò):

error=Error Domain=com.alamofire.error.serialization.response Code=-1016?

處理:

剛開(kāi)始只添加了"text/html",繼續(xù)報(bào)錯(cuò),后來(lái)搞了老半天,才找到這個(gè)坑,后來(lái)返回的是無(wú)文本屬性的文檔,所以需要添加"text/plain"屬性。

_manager.responseSerializer.acceptableContentTypes= [NSSetsetWithObjects:@"application/json",@"text/json",@"text/javascript",@"text/html",@"text/plain",nil];

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容