【发布时间】:2014-02-17 11:21:14
【问题描述】:
尝试使用@"GET" 请求从服务器获取数据, 以下代码始终返回 null:
有人发现我的以下代码有问题吗?
或者它可以是服务器端问题.. ?
感谢您的帮助!
+ (id)sendParam:(NSString*)ParamString url:(NSString*)url{
NSMutableURLRequest *request = [[NSMutableURLRequest alloc]init];
NSString *post = ParamString;
NSData *postData = [post dataUsingEncoding:NSUTF8StringEncoding allowLossyConversion:YES];
NSString *postLength = [NSString stringWithFormat:@"%d",[postData length]];
[request setURL:[NSURL URLWithString:url]];
NSLog(@"postLength =%@",postLength);
[request setHTTPBody:postData];
[request setHTTPMethod:@"GET"];
[request addValue:ParamString forHTTPHeaderField:@"GET"];
[request setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
NSURLResponse *response;
NSError *error;
NSData *aData = [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&error];
NSMutableArray*jsonReturn = [[NSMutableArray alloc]init];
jsonReturn = (NSMutableArray*)[NSJSONSerialization JSONObjectWithData:aData options:kNilOptions error:&error];
NSLog(@"jsonReturn %@",jsonReturn);
return jsonReturn;
}
编辑后:
+ (id)sendParam:(NSString*)ParamString url:(NSString*)url{
NSString*StringGETMETHOD = [NSString stringWithFormat:@"%@%@",url,ParamString];
NSMutableURLRequest *request = [[NSMutableURLRequest alloc]init];
[request setURL:[NSURL URLWithString:StringGETMETHOD]];
[request setHTTPMethod:@"POST"];
NSURLResponse *response;
NSError *error;
NSData *aData = [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&error];
NSLog(@"aData=%@",aData);
if (aData) {
jsonReturn=(NSMutableArray*)[NSJSONSerialization JSONObjectWithData:aData options:kNilOptions error:&error];
NSLog(@"jsonReturn %@",jsonReturn);
}
【问题讨论】:
标签: objective-c json get nsjsonserialization nsmutableurlrequest