创建 iOS 客户端服务器应用程序。 ASIFormDataRequest 问题
Posted
技术标签:
【中文标题】创建 iOS 客户端服务器应用程序。 ASIFormDataRequest 问题【英文标题】:Create iOS client server app. ASIFormDataRequest issues 【发布时间】:2012-07-20 10:49:12 【问题描述】:我的问题是:
如何使用ASIFormDataRequest
and second 创建与以下相同的请求,因为我认为我需要从响应中解析 JSON。
http://exampledomain.com/mobile_api/register/?client=iphone&info=A=iPhone/OS=5.1/C=UA&time=1342780143&udid=8b6f0cc104d137ae2e1730235f5664094b831122&version=1.0&secure=5444d72741bad93b916577d9297fa
现在我尝试使用这样的代码
NSString *strURL = @"http://test2.mafia.ua/mobile_api/register/";
ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:[NSURL URLWithString:strURL]];
[request setDelegate:self];
[request setPostValue:@"iphone" forKey:@"client"];
[request setPostValue:@"A=iPhone/OS=5.1/C=UA" forKey:@"info"];
[request setPostValue:@"1342780143" forKey:@"time"];
[request setPostValue:@"8b6f0cc104d137ae2e1730235f5664094b831122" forKey:@"udid"];
[request setPostValue:@"1.0" forKey:@"version"];
[request setPostValue:@"5444d72741bad93b916577d9297fa" forKey:@"secure"];
[request startAsynchronous];
这对吗?
我也实现了委托方法
- (void)requestFinished:(ASIHTTPRequest *)request
NSLog(@"Response %d ==> %@", request.responseStatusCode, [request responseString]);
- (void)requestFailed:(ASIHTTPRequest *)request
作为回应,如果我使用某些浏览器,我会得到这个(我认为这是 JSON)。
“状态”:“正常”,“秘密”:“b82b7771f600772c2c5af903b117b5e”,“客户端”:“200004”,“过期”:“1345372850”
【问题讨论】:
【参考方案1】:您在 POST 字段中传递数据(这就是 setPostValue:
所做的。)
您应该将它们包含在您的 URL 中;尝试寻找一种在 URL 中构建查询参数的简单方法,或者只使用类似 stringWithFormat: 和适当的转义。
【讨论】:
感谢您的回复,我尝试将其用作 URL,并得到响应 403。但通过浏览器(谷歌浏览器)我得到 json 也许是因为你还在 POST 数据?尝试从您的应用中使用 GET(也许直接使用 ASIHTTPRequest?)以上是关于创建 iOS 客户端服务器应用程序。 ASIFormDataRequest 问题的主要内容,如果未能解决你的问题,请参考以下文章
如何在 IOS 中使用 STRIPE API 创建 STRIPE 客户?
基于 Amazon Amplify 构建自己的首个 iOS 应用程序