1

如果用户名/密码正确,我如何检查网络服务?

我不想转移整个响应体。我只想知道用户名/密码是否存在并且正确。目前我正在向我的网络服务发送请求,如下所示:

self.request = [ASIHTTPRequest requestWithURL:urlObject];
[self.request setUsername:username];
[self.request setPassword:password];
[self.request addRequestHeader:@"Accept" value:@"application/json"];
[self.request setDelegate:self];
[self.request startAsynchronous];

如果我使用浏览器访问 Web 服务并输入了错误的密码,我会再次显示身份验证对话框。我在 Xcode 中尝试了相同的方法,如果密码错误,我会得到状态码 = 200。我想我可以用 401 等状态码来做到这一点。但这没有用,因为我总是得到状态码 = 200。我是否必须在服务器端进行一些更改?

我正在使用 REST Web 服务,它使用 Restlet 2.0 作为 Java 框架。文档

4

1 回答 1

0

我仍然不确定您的网络服务是如何工作的,但从提供的信息来看,我想我可以回答您的问题。

如果您在用户名和密码错误时收到“requestFailed:”,那么您应该能够通过使用以下方法来避免下载响应正文:

[request setRequestMethod:@"HEAD"];
于 2010-09-23T01:36:20.447 回答