我如何使用get方法将数据发布到具有6个值和json格式的api链接上?
我真的很困惑。我做这几天。最好有6个用于写入值的文本字段和一个指示发布数据的按钮?
检查我的代码,请帮助。
-(IBAction)postDataPressed
{
NSString *urlString = @"http://192.168.18.8/apisample2/friendb.php?fm=jsn";
NSURL *url = [NSURL URLWithString:urlString];
ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:url];
[request setPostValue:user.text forKey:@"un"];
[request setPostValue:pass.text forKey:@"pd"];
[request setPostValue:gender.text forKey:@"gd"];
[request setPostValue:age.text forKey:@"ag"];
[request setPostValue:status.text forKey:@"st"];
[request setPostValue:lookfor.text forKey:@"lf"];
[request setRequestMethod:@"GET"];
[request setCompletionBlock:^{
NSString *responseString = [request responseString];
NSLog(@"Response: %@", responseString);
}];
[request setFailedBlock:^{
NSError *error = [request error];
NSLog(@"Error: %@", error.localizedDescription);
}];
[request setDidFinishSelector:@selector(requestFinished:)];
[request setDidFailSelector:@selector(requestFailed:)];
[request startAsynchronous];
}
我希望有人能帮上忙。
最佳答案
NSString *request_url = [NSString stringWithFormat: @"http://192.168.18.8/apisample2/friendb.php?fm=jsn&un=%@&pd=%@&gd=%@&ag=%@&st=%@&lf=%@",
user.text, pass.text, gender.text, age.text,status.text,lookfor.text];
NSURL *url = [NSURL URLWithString:request_url];
ASIHttpRequest *request = [ASIHttpRequest requestWithURL:url];
request.delegate = self;
....
HTTP Get方法仅接受url中称为查询字符串的数据,因此您必须自己构建查询字符串。