2013-11-12 3 views
0

Мой код здесь:AFHTTPRequestOperationManager сообщение Failed

AFHTTPRequestOperationManager *managers = [AFHTTPRequestOperationManager manager]; 

NSMutableDictionary *parDic = [NSMutableDictionary dictionary]; 

[parDic setObject:@"admin" forKey:@"userId"]; 

[parDic setObject:@"1" forKey:@"password"]; 

    [managers POST:@"http://posttestserver.com/post.php?" parameters:par success:^(AFHTTPRequestOperation *operation, id responseObject) { 
    NSLog(@"JSON: %@", responseObject); 
    NSLog(@"sucess"); 
} failure:^(AFHTTPRequestOperation *operation, NSError *error) { 
    NSLog(@"Error: %@", error); 
}]; 

Он печати, что: Error: Error Domain=AFNetworkingErrorDomain Code=-1016 "Request failed: unacceptable content-type: text/plain"

Но когда я использую тест кухни это запрос, он работает fine.Why Пожалуйста, помогите мне, спасибо очень много? !

+0

Смотрите эту http://stackoverflow.com/a/19121229/1545180 – Ganapathy

+0

Эта ошибка может быть вы не начать операцию ... [операция запуска]; –

+0

manager.responseSerializer.acceptableContentTypes = [NSSet setWithObject: @ "text/html"]; добавьте эту строку и попробуйте, как указано в ссылке выше. – Ganapathy

ответ

1

Следуйте ниже код, который я успешно из его

NSString *StringUrl = [NSString stringWithFormat:@"%@?userId=%@&password=%@",YourUrl,@"admin",@"1"]; 

    NSURLRequest *UrlRequest = [NSURLRequest requestWithURL:[NSURL URLWithString:StringUrl]]; 

    AFHTTPRequestOperation *operation = [[AFHTTPRequestOperation alloc]initWithRequest:UrlRequest]; 

    operation.responseSerializer = [AFJSONResponseSerializer new]; 

    [operation setCompletionBlockWithSuccess:^(AFHTTPRequestOperation *OP,id ResponseObj) 
    { 

     NsLog(@"Success == %@",ResponseObj); 


    }failure:^(AFHTTPRequestOperation *OP,NSError *error) 
    { 

     NsLog(@"Error == %@",[error localizedDescription]) 

    }]; 

    [operation start]; 
+0

Извините, я забыл код. Ваш метод является методом «GET», но я хочу использовать метод «POST». Спасибо. –

0

эта линия работала для меня после попытки все остальное:

operation.responseSerializer = [AFCompoundResponseSerializer сериализатору];

NSString *strdata =[NSString stringWithFormat:@"{\"objID\":\"%ld\",\"objString\":\"%@\",\"objWidth\":\"%@\",\"objHeight\":\"%@\",\"objStartX\":\"%@\",\"objStartY\":\"%@\",\"objEndX\":\"%@\",\"objEndY\":\"%@\",\"objSnapX\":\"%@\",\"objSnapY\":\"%@\",\"objImage\":\"%@\"}", 
        (long)self.accelerometerObject.objID, 
        self.accelerometerObject.objString.string, 
        self.accelerometerObject.objWidth, 
        self.accelerometerObject.objHeight, 
        self.accelerometerObject.objStartX, 
        self.accelerometerObject.objStartY, 
        self.accelerometerObject.objEndX, 
        self.accelerometerObject.objEndY, 
        self.accelerometerObject.objSnapX, 
        self.accelerometerObject.objSnapY, 
        self.accelerometerObject.objImage]; 
NSLog(@"%@",strdata); 
NSDictionary *parameters = @{ 
          @"data" : strdata, 
          }; 
AFHTTPRequestOperationManager *requestOperationManager = [AFHTTPRequestOperationManager manager]; 
requestOperationManager.responseSerializer.acceptableContentTypes = [NSSet setWithObject:@"text/html"]; 
NSString *requestURL = @"http://yourserver.com/dataHandler.asmx/scriptToHandlePost"; 
requestOperationManager.responseSerializer = [AFCompoundResponseSerializer serializer]; 
requestOperationManager.responseSerializer.acceptableContentTypes = [NSSet setWithObject:@"text/html"]; 
[requestOperationManager POST:requestURL 
        parameters:parameters 
         success:^(AFHTTPRequestOperation *operation, id responseObject) 
{ 
    NSLog(@"Succeeded: >>>>>>> %@",strdata); 
} 
         failure:^(AFHTTPRequestOperation *operation, NSError *error) 
{ 
    NSLog(@">>>>>>>>>>>failed %@",error); 
}]; 
Смежные вопросы