【问题标题】:Android custom HttpClient's execute always returning status code as 200 even with wrong passwordAndroid自定义HttpClient的执行总是返回状态码为200,即使密码错误
【发布时间】:2014-11-22 02:27:26
【问题描述】:

我正在尝试为我组织的票务处理网站开发一个小型 android 应用程序,该网站是一个安全站点 https。我创建了自己的自定义 httpclient 和自己的 SSLSocketFactory。

String user_Name = "asia\\manoharamkem";
String pass_Word = "Temenos13";
List<NameValuePair> nvps = new ArrayList<NameValuePair>(2);
nvps.add(new BasicNameValuePair("username", user_Name));
nvps.add(new BasicNameValuePair("password", pass_Word));          
HttpResponse response = httpclient.execute(httpost);
Log.w("TCSPP","RESPONSE CODE : "+response.getStatusLine().getStatusCode());

当我执行上述代码时,即使登录凭据不正确,代码也始终显示为 200。我不能分享我的网址,因为它是机密的。

我不确定代码200是用于登录还是用于url访问是否成功。我在谷歌上搜索了过去 1 周,但没有任何线索。请帮助我登录 https 网站。

我公司的网站是这样的https://myurl.com,并且在启动时,它将被重定向到显示登录页面的url https://myurl.com/CookieAuth.dll?GetLogon?curl=Z2F&reason=0&formdir=5。我必须通过 android app 登录到这个 url。

请帮帮我。

问候, 马诺哈尔

【问题讨论】:

  • 我认为您应该尝试排除,这不是网络服务器意外返回此状态码。尝试在非 Android HTTP 客户端中运行登录。另外:如果您希望我们研究这个问题,如果您将 Android HttpClient 的自定义实现添加到您的问题中,将会非常全面。

标签: android httpclient


【解决方案1】:

响应码 200 表示请求成功。要检查登录条件,您需要在服务器端进行验证,并希望将结果作为成功或错误返回。

【讨论】:

    【解决方案2】:

    如果您收到 302 重定向作为响应,则需要切换重定向。这可以按照此处所述完成:https://stackoverflow.com/a/1519487/1892046。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-08-14
      • 2018-12-26
      • 2021-10-23
      • 1970-01-01
      • 1970-01-01
      • 2018-05-05
      • 1970-01-01
      • 2016-09-08
      相关资源
      最近更新 更多