我想将我的iPhone应用程序中的一些值发送到服务器中的ASp.Net网页。我正在使用asihttp。它处理请求并在服务器上调用页面。但是在服务器端没有检索到任何值。以下是iPhone应用程序的代码。
NSURL *url = [NSURL URLWithString:urlString];
ASIFormDataRequest *request = [[[ASIFormDataRequest alloc] initWithURL:url] autorelease];
[request setPostValue:@"abc" forKey:@"from"];
[request setPostValue:@"abc" forKey:@"name"];
[request setPostValue:@"abc" forKey:@"phone"];
[request setDelegate:self];
[request startSynchronous];
在服务器端,我使用的是asp.net c#。这是用于重现值的代码。但我得到了emtpy string?
sendMail(Request.QueryString["name"],Request.QueryString["from"],Request.QueryString["phone"]);
有人可以帮忙吗?
答案 0 :(得分:2)
我认为Request.QueryString["name"]
不会检索post参数。您需要更改ASIHttpRequest以在查询字符串中包含参数,或修改ASP.NET代码以期望发布参数。
您可以在服务器端尝试Request.Form["name"]
,Request.Form["phone"]
等。
或者,您可以尝试:
NSURL *url = [NSURL URLWithString:[NSString stringWithFormat:@"%@?name=%@&...",urlString,name,...];
ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url];
在客户端。
答案 1 :(得分:0)
QueryString用于URL中的值。一个帖子将在Request.Form中有值,或者只有Request,它将搜索QueryString&形式为价值观。
有关QueryString与Form的更多细节的另一个问题。
Request["key"] vs Request.Params["key"] vs Request.QueryString["key"]