无法让HttpParams使用Postrequest

Chr*_*ner 14 android http android-internet

我无法从Android-API中获取HttpParams内容.

我只是不想用我的Postrequest发送一些简单的参数.除参数外,一切正常.将参数设置为postrequest的代码:

HttpParams params = new BasicHttpParams();
params.setParameter("password", "secret");
params.setParameter("name", "testuser");
postRequest.setParams(params);
Run Code Online (Sandbox Code Playgroud)

似乎这段代码根本没有添加任何参数,因为服务器总是回答,我的请求缺少"名称"参数.

实际按预期工作的一个例子:

ArrayList<NameValuePair> postParameters = new ArrayList<NameValuePair>();
postParameters.add(new BasicNameValuePair("name", "testuser"));
postParameters.add(new BasicNameValuePair("password", "secret"));
UrlEncodedFormEntity formEntity = new UrlEncodedFormEntity(postParameters);
postRequest.setEntity(formEntity);
Run Code Online (Sandbox Code Playgroud)

但我想使用第一个例子的版本,因为它更容易阅读和理解.

任何暗示都非常感谢!

mde*_*lmo 2

一旦我遇到了同样的问题,我就按照与你相同的方式解决了它......我记得我发现了一些关于为什么它不起作用的主题。这是关于 Apache 在服务器端的库实现的一些事情。

不幸的是,我现在找不到这个主题,但如果我是你,我会让它继续工作,不会太担心代码的“优雅”,因为你可能无能为力,如果你可以,这根本不实用。

  • 是的,你说得对,但我不明白。如果 HttpParams 不是明显不起作用,为什么还要有一个 API? (3认同)