在客户端,我使用以下代码:
HashMap<String, String> paramMap = new HashMap<>();
paramMap.put("userId", "1579533296");
paramMap.put("identity", "352225199101195515");
paramMap.put("phoneNum", "15959177178");
HttpClient client = new HttpClient();
PostMethod method = new PostMethod("http://localhost:8088/requestTest");
HttpMethodParams p = new HttpMethodParams();
for (Map.Entry<String, String> entry : paramMap.entrySet()) {
p.setParameter(entry.getKey(), entry.getValue());
}
method.setParams(p);
client.executeMethod(method);
我的服务器端的代码是这样的:
@RequestMapping("/requestTest")
public void requestTest(HttpServletRequest request) throws IOException {
String userId = request.getParameter("userId");
String identity= request.getParameter("identity");
String phoneNum= request.getParameter("phoneNum");
System.out.println(userId+identity+phoneNum);
}
但是我得到了 userId、identity 和 phoneNum 的空值,那么我怎样才能得到它们的值呢?我知道我可以使用 method.setParameter(key,value) 在客户端设置参数并使用 getParameter(key) 获取参数值,但我只是好奇是否有任何方法可以在服务器端设置值通过 HttpMethodParams。