Java HttpClient:无法读取post请求中的json数据
这里我使用HttpClient发布JSON数据。但我无法读取其他应用程序上的数据。当我执行request.getParameter("username")
时,它返回null。我的两个应用程序都部署在同一台服务器上。请告诉我我做错了什么。多谢各位
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String username = request.getParameter("username");
String password = request.getParameter("password");
DefaultHttpClient httpClient = new DefaultHttpClient();
HttpPost postRequest = new HttpPost("http://localhost:8080/AuthenticationService/UserIdentificationServlet");
postRequest.setHeader("Content-type", "application/json");
StringEntity input = new StringEntity("{\"username\":\""+username+"\"}");
input.setContentType("application/json");
postRequest.setEntity(input);
HttpResponse postResponse = httpClient.execute(postRequest);
BufferedReader br = new BufferedReader(new InputStreamReader((postResponse.getEntity().getContent())));
String output;
System.out.println("Output from Server .... \n");
while ((output = br.readLine()) != null) {
System.out.println(output);
}
httpClient.getConnectionManager().shutdown();
}
# 1 楼答案
如果您想使用请求。getParameter,则必须以URL编码的格式发布数据