5

我正在使用 HttpClient 向http://www.pgu.donland.ru/php/Login.php发送一个帖子请求,并希望得到这样的响应:

<?xml version="1.0" encoding="utf-8"?><resp status="1" uD="John" UID="2" e=""/>

但不幸的是我不断得到:

<?xml version="1.0" encoding="utf-8"?> <resp status="1" uD="" UID="" e=""/>

这里发生了什么?

我正在使用一个自定义类,其中包含 HttpClient 客户端字段,在我的构造函数中我正在使用这些设置:

SchemeRegistry schemeRegistry = new SchemeRegistry();
    schemeRegistry.register(new Scheme("http", PlainSocketFactory
                                    .getSocketFactory(), 80));
    schemeRegistry.register(new Scheme("https", new EasySSLSocketFactory(),
                                    443));

    HttpParams params = new BasicHttpParams();
    params.setParameter(ConnManagerPNames.MAX_TOTAL_CONNECTIONS, 30);
    params.setParameter(ConnManagerPNames.MAX_CONNECTIONS_PER_ROUTE,
                                    new ConnPerRouteBean(30));
    params.setParameter(HttpProtocolParams.USE_EXPECT_CONTINUE, false);
    params.setParameter("http.socket.timeout", timeout * 1000);
    params.setParameter("http.connection.timeout", timeout * 1000);
    // params.setParameter("http.connection-manager.timeout", new
    // Long(timeout * 1000));
    params.setParameter("http.protocol.head-body-timeout", timeout * 1000);
    HttpProtocolParams.setVersion(params, HttpVersion.HTTP_1_1);

    ClientConnectionManager cm = new SingleClientConnManager(params,
                                    schemeRegistry);
    this.client = new DefaultHttpClient(cm, params);

感谢您的任何帮助,您可以提供。

4

2 回答 2

2

服务器端有问题。检查 Login.php 代码。

于 2012-12-07T15:23:17.917 回答
0

好吧,对于意大利人来说,俄语并不是最简单的语言,但是......看起来 uD 和 UID 参数在从客户端接收到它们作为用户名/密码(或用户密钥)后被服务器回显。也许您没有向服务器发送任何用户 ID 或任何用户名/密码对,因此它无法以预期的方式响应您。

于 2012-12-07T15:24:50.460 回答