我正在使用ASIHTTPRequest类来与Web服务进行通信并获得响应。这就是我向服务器发送请求的方式
NSString *str = [NSString stringWithFormat:@"%@verifyLogin.json", serverUrl];
NSURL *url = [NSURL URLWithString:[str stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];
ASIHTTPRequest *request = [[[ASIHTTPRequest alloc] initWithURL:url] autorelease];
[request addRequestHeader:@"Content-Type" value:@"text/x-gwt-rpc; charset=utf-8"];
NSDictionary* data = [NSDictionary dictionaryWithObjectsAndKeys:emailId, @"username", pwd, @"password", nil];
[request appendPostData: [[data JSONFragment] dataUsingEncoding: NSUTF8StringEncoding]];
[request setRequestMethod:@"POST"];
[request setDelegate:self];
[request setDidFinishSelector: @selector(gotLoginResponse:)];
[request setDidFailSelector: @selector(loginRequestFailed:)];
[networkQueue addOperation: request];
[networkQueue go];
控件立即进入错误例程,错误描述和域
无法启动HTTP连接和 ASIHTTPRequestErrorDomain
我可以通过桌面工具获取相同的请求来检查HTTP请求,因此我知道设置都是正确的。
有人可以在发送请求时告诉我我在这里失踪了吗?
感谢。
答案 0 :(得分:5)
正如我之前评论的那样;
在你的第一行说 “%verifyLogin.json”。不应该那样 是; “%@ verifyLogin.json”????
答案 1 :(得分:2)
对我来说,我忘记添加http://因为我在本地测试。但添加http后,它成功运行
答案 2 :(得分:0)
请求失败时检查请求的状态代码吗?我最近处理了ASI-HTTP-Request的JSON用户身份验证问题,其中第一个请求将始终失败,状态代码为0,某种基础网络连接失败(好像它没有连接到互联网,但显然是)
我能够通过将该特定请求设置为不尝试使用持久连接来解决它。
首先尝试一下!