我尝试使用iOS模拟器运行get请求,但我没有收到服务器的任何响应,也没有收到数据。
NSString *theGetURL = [NSString stringWithFormat:@"http://10.2.176.104:9000/recorddata?id=ios×tamp=%@%%20%@,%%20%@%%20%@&cpu=%@&memory=%@&battery=%@", monthString, dateString, yearString, timeString, self.proData, self.memData,self.batData];
正如您所看到的,我在字符串中有几个局部变量和全局变量,以及一些我用'%'逃避的百分号。当我在模拟器中将此字符串复制并粘贴到Safari中时,数据会添加到我的数据库中。
我已尝试使用以下代码通过我的应用发送get请求:
NSMutableURLRequest *newRequest = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:theGetURL]
cachePolicy:NSURLRequestReloadIgnoringLocalAndRemoteCacheData
timeoutInterval:10];
[newRequest setHTTPMethod: @"GET"];
NSError *requestError;
NSURLResponse *urlResponse = nil;
NSData *response1 = [NSURLConnection sendSynchronousRequest:newRequest returningResponse:&urlResponse error:&requestError];
NSLog(@"response=%@",response1);
此代码编译并运行正常,但不起作用。我的数据库仍然是空的。
知道我做错了吗?
答案 0 :(得分:0)
试试这个
NSString * theGetURL = @"http://www.google.co.in";
NSMutableURLRequest *newRequest = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:theGetURL]
cachePolicy:NSURLRequestReloadIgnoringLocalAndRemoteCacheData
timeoutInterval:10];
[newRequest setHTTPMethod: @"GET"];
NSError *requestError;
NSURLResponse *urlResponse;
NSData *response1 = [NSURLConnection sendSynchronousRequest:newRequest returningResponse:&urlResponse error:&requestError];
NSString* newStr = [[NSString alloc] initWithData:response1 encoding:NSUTF8StringEncoding];
NSLog(@"error = %@",requestError.localizedDescription);
NSLog(@"response=%@",newStr);
NSLog(@"url response = %@",urlResponse);
答案 1 :(得分:0)
原来,我网址中的一个字符串有一个空格。空间被移除后,一切正常。