0
我需要删除api中的一些项目。我将AFNetworking 2.3.4版本用于api请求,响应。在这里,我使用DELETE方法删除api项目,当我调用这个api时,它成功删除了这些项目,但是它会抛出错误“Data is nil”。为什么它抛出这个错误我不确切地知道。删除ios中的api值为“数据为零”值
这里是我的API代码删除方法:
//使用ArrayList的
+(void)DeleteDataFromApiWithAccessToken:(NSString *)url withParameters:(NSDictionary *)parameters accessTokenValue:(NSString *)tokenValue returnBlock:(arrayList)block
{
NSLog(@"loadDataFromApi withParameters :: url %@, params %@",url,parameters);
AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];
AFJSONRequestSerializer *serializer = [AFJSONRequestSerializer serializer];
[serializer setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
[serializer setValue:@"application/json" forHTTPHeaderField:@"Accept"];
[serializer setValue:tokenValue forHTTPHeaderField:ACCESSTOKEN_HEADER_FIELD];
[serializer setValue:FF_API_HEADER_VALUE forHTTPHeaderField:FF_API_HEADER_FIELD];
//serializer.HTTPMethodsEncodingParametersInURI = [NSSet setWithObjects:@"GET", @"HEAD", nil];
manager.requestSerializer.timeoutInterval = 0.7;
manager.requestSerializer.cachePolicy = NSURLRequestReloadIgnoringLocalAndRemoteCacheData;
manager.requestSerializer = serializer;
manager.responseSerializer = [AFHTTPResponseSerializer serializer];
// Check the Network Connection
if(![CommonClassApp checkForNetwork]) {
[CommonClassApp customAlert:ERR_MSG_NETWORK_PROBLEM];
if (block) block(NULL);
}else {
[manager DELETE:url parameters:parameters success:^(AFHTTPRequestOperation *operation, id responseObject)
{
NSLog(@"RESPONSE STATUS CODE: %ld", [responseObject statusCode]);
if (responseObject != NULL)
{
NSError *error = nil;
NSMutableArray *responseJsonData = [NSJSONSerialization JSONObjectWithData:responseObject options:NSJSONReadingAllowFragments error:&error];
NSLog(@"responseJsonData - %@",responseJsonData);
if (block) block(responseJsonData);
}else{
[CommonClassApp customAlert:ERR_MSG_INVALID_RESPONSE];
if (block) block(NULL);
}
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
NSLog(@"failure ::: %ld",(long)[operation.response statusCode]);
NSDictionary *responseJsonData = [NSJSONSerialization JSONObjectWithData:(NSData *)error.userInfo[AFNetworkingOperationFailingURLResponseDataErrorKey] options:NSJSONReadingAllowFragments error:&error];
if ([operation.response statusCode] == 401) {
if (responseJsonData.count>0) {
NSString *userError = [responseJsonData valueForKey:@"code"];
[CommonClassApp customAlert:[ERROR_AUTH_ERROR valueForKey:userError]];
}
}
else
{
NSString *userError = [responseJsonData valueForKey:@"message"];
NSLog(@"Error Message: %@",userError);
[CommonClassApp customAlert:userError];
}
if (block) block(NULL);
}];
“抛出错误”?如在例外情况下还是仅仅打印消息? – Droppy