如何获取服务器响应以及在使用目标 c 通过 JSON 显示警报后服务器响应是不是为“成功”[关闭]

Posted

技术标签:

【中文标题】如何获取服务器响应以及在使用目标 c 通过 JSON 显示警报后服务器响应是不是为“成功”[关闭]【英文标题】:how to get server response and if server response is "Success" after show alert by JSON using objective c [closed]如何获取服务器响应以及在使用目标 c 通过 JSON 显示警报后服务器响应是否为“成功”[关闭] 【发布时间】:2013-08-16 05:28:04 【问题描述】:
NSString *data = [NSString stringWithFormat:@"username=%@&password=%@",usertxt.text,pwdtxt.text,[NSNumber numberWithBool:YES]];
    NSData *postData = [data dataUsingEncoding:NSASCIIStringEncoding allowLossyConversion:YES];
    NSString *postLength = [NSString stringWithFormat:@"%d", [postData length]];

//准备发送数据的URL请求。

NSMutableURLRequest *request = [[NSMutableURLRequest alloc] init] ;
connection=[[NSURLConnection alloc] initWithRequest:request delegate:self];
NSString *url = [NSString stringWithFormat:URL_PATH];
[request setURL:[NSURL URLWithString:url]];
[request setHTTPMethod:@"POST"];
[request setValue:postLength forHTTPHeaderField:@"Accept"];
[request setHTTPBody:postData];
[request setTimeoutInterval:7.0];

NSURLResponse *_response;
NSError *error;
NSData *urlData = [NSURLConnection sendSynchronousRequest:request returningResponse:&_response error:&error];
NSString *str=[[NSString alloc]initWithData:urlData encoding:NSUTF8StringEncoding];

//打印服务器响应

NSLog(@"Login response:%@",str);

//将JSON字符串解析成NSDictionary

 NSDictionary* json = [NSJSONSerialization JSONObjectWithData:urlData
                                                     options:kNilOptions
                                                      error:&error]; 

【问题讨论】:

修复代码格式并解释问题。您不能只发布一堆没有任何解释的代码。这段代码有什么问题?您需要什么帮助? -1 这里似乎没有问题 【参考方案1】:

试试这个 不需要使用 JSON 只需尝试此代码即可从服务器获取响应

NSString *string= [[NSString alloc]initWithFormat:@"url"];
        NSLog(@"%@",string);
        NSURL *url = [NSURL URLWithString:string];
        NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url];
        [request setHTTPMethod:@"POST"];

        NSURLResponse *response;
        NSError *err;
        NSData *responseData = [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&err];
        NSLog(@"responseData: %@", responseData);
        NSString *str = [[NSString alloc] initWithData:responseData encoding:NSUTF8StringEncoding];
        NSLog(@"responseData: %@", str);
        NSString *str1 = @"1";
        if ([str isEqualToString:str1 ])
        

            UIAlertView *alert = [[UIAlertView alloc]initWithTitle:@"Successfully" message:@"" delegate:nil cancelButtonTitle:@"Ok" otherButtonTitles:nil, nil];
            [alert show];
        
        else
        
            UIAlertView *alert = [[UIAlertView alloc]initWithTitle:@"Try Again" message:@"" delegate:self cancelButtonTitle:@"Try Later" otherButtonTitles:@"Call", nil];
            alert.tag = 1;
            [alert show];
        

如果您的响应字符串是success,则将其替换为@"1"

【讨论】:

嗨,kapil,感谢您的帮助!我已经收到“登录响应 “respose”:“成功”。现在我想要显示警报后响应参数是否成功,否则显示错误警报...跨度> 已经??你解决你的问题与否... 好吧,代码为你工作只是把成功放在这个地方或@“1”这样的 NSString *str1 = @“success”; NSString *string = [NSString stringWithFormat:@"username=%@&password=%@",usertxt.text,pwdtxt.text,[NSNumber numberWithBool:YES]]; //我需要用参数包括我的输入字段文本框... this is what this is url NSString *string = [NSString stringWithFormat:@"url.php?username=%@&password=%@",usertxt.text,pwdtxt.text];对不需要把这一行 [NSNumber numberWithBool:YES] 只需添加我的代码,然后尝试

以上是关于如何获取服务器响应以及在使用目标 c 通过 JSON 显示警报后服务器响应是不是为“成功”[关闭]的主要内容,如果未能解决你的问题,请参考以下文章

基于python的爬虫

fiddler获取响应时间以及服务器IP

如何在 android 中获取 XML 响应字符串以及 Kotlin 数据模型?

C#怎么使用反射获取事件的响应方法

通过 POST 发送 JSON 不起作用 - 目标 C

如何使用目标 C 将 JSON 响应存储到 NSPredicate 中?