简体   繁体   English

为什么 Json 字典总是在 nsdata(Bytes) 中给出响应。如何从 Web 服务获取字典

[英]why Json Dictionary is Giving the response in nsdata(Bytes) always.How can i Get the Dictionary from web service

In this i am sending the header and Add perameters to hitting the web service.在此,我将发送标头并添加参数以访问 Web 服务。 the problem is after hitting the web service controller is not going in to success part sometimes.问题是在点击 Web 服务控制器后有时不会进入成功部分。 if it is hitting properly then it will return the result in bytes.如果它正确命中,那么它将以字节为单位返回结果。 This is My code::这是我的代码::

 AFHTTPRequestOperationManager *manager =[AFHTTPRequestOperationManager manager];
manager.responseSerializer = [AFHTTPResponseSerializer serializer];
[manager.requestSerializer setTimeoutInterval:300];
manager.requestSerializer.cachePolicy = NSURLRequestReloadIgnoringLocalAndRemoteCacheData;

//giving the correct format to json
manager.responseSerializer.acceptableContentTypes = [manager.responseSerializer.acceptableContentTypes setByAddingObject:@"text/html"];
token=[parameters valueForKey:@"token"];
if(token == nil  || [token isEqual:[NSNull null]]){
    token=[[[NSUserDefaults standardUserDefaults]dictionaryForKey:@"LoginWebData"]valueForKey:@"token"];
}else{
    token=[parameters valueForKey:@"token"];
}
//set the header do http request
[manager.requestSerializer setValue:[NSString stringWithFormat:@"%@",token]forHTTPHeaderField:@"token"];
[manager POST:[BaseURLString stringByAppendingString:methodName] parameters:parameters success:^(AFHTTPRequestOperation *operation, id responseObject){

    NSLog(@"JSON: %@", responseObject);
    UserDict=responseObject;
    [self.TableviwSideMenu reloadData];
}
      failure:^(AFHTTPRequestOperation *operation, NSError *error){
          NSLog(@"Error: %@", [error localizedDescription]);
          [self showAlert: [error localizedDescription]];
      }];

the AFNetworking will do the serialization for you and the responseObject will most likely be either a NSArray or NSDictionary object do like AFNetworking 将为您进行序列化,而 responseObject 很可能是 NSArray 或 NSDictionary 对象,就像

   [manager POST:[BaseURLString stringByAppendingString:methodName] parameters:parameters success:^(AFHTTPRequestOperation *operation, id responseObject){

    NSLog(@"JSON: %@", responseObject);
       if ([responseObject isKindOfClass:[NSArray class]]) {
    NSArray *responseArray = responseObject;
       UserDict=responseArray;
    /* do something with responseArray */
} else if ([responseObject isKindOfClass:[NSDictionary class]]) {
    NSDictionary *responseDict = responseObject;
     UserDict=responseDict;
    /* do something with responseDict */
}
    if (UserDict.count>0)
     [self.TableviwSideMenu reloadData];

}
      failure:^(AFHTTPRequestOperation *operation, NSError *error){
          NSLog(@"Error: %@", [error localizedDescription]);
          [self showAlert: [error localizedDescription]];
      }];

The AFNetworking framework and its delegate will handle everything. AFNetworking 框架及其委托将处理一切。 You will get responseObject in NSDictionary.您将在 NSDictionary 中获得 responseObject。

  -(void)Request{
    [self.Request_coursecomplete setRequestMethod:@"POST"];
    self.Request_coursecomplete = [ASIFormDataRequest requestWithURL:sendSMSURL];
    self.Request_coursecomplete.delegate = self;


    //will try second time
    [self.Request_coursecomplete setNumberOfTimesToRetryOnTimeout:2];

    [self.Request_coursecomplete setShouldContinueWhenAppEntersBackground:YES];

    NSTimeInterval timeOutSecs = 60000;

    [self.Request_coursecomplete setTimeOutSeconds:timeOutSecs];
    [self.Request_coursecomplete startAsynchronous];
}

- (void)requestFinished:(ASIHTTPRequest *)request
{

    NSString *receivedString = [request responseString];

    NSLog(@"json string: %@",receivedString);

    NSDictionary *d = [receivedString JSONValue];
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 我们如何从SOAP Web服务响应中提取JSON数据并将其放入iOS中的字典中 - how can we abstract json data from SOAP web service response and put it into a dictionary in iOS 如何从Web服务获取字典对象 - How to get a Dictionary Object from a Web Service 如何从iOS中的Web服务调用禁用自动排序JSON词典响应 - how to disable auto sorting JSON dictionary response from web service call in iOS 如何从 swift 中的字典数组的 JSON 响应中获取值 - How to get value from JSON response from array of dictionary in swift iOS:我如何在iOS的ViewController中获取JSON字典 - IOS:how can i get a json dictionary in viewcontroller in ios 如何从此JSON字典中检索数据? - How can I retrieve the data from this JSON dictionary? 如何从目标c中的NSData变量读取24个字节后的其余字节 - How can I read rest of bytes after 24 bytes from a NSData variable in objective c 如何从字典中获取2个属性 - How can I get 2 properties from my fetch in my dictionary 我如何从此输出中获取电子邮件和密码值,该输出是iOS中Web服务的响应? - How can i get email and password value from this output which is response from web service in iOS? 如何从JSON字典中获取信息-Objective-C / IOS / xCode - How to I get the info from a dictionary that I got from JSON - Objective-C/IOS/xCode
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM