我在servlet中做了一个简单的操作,就是打印出获取到的参数,但是发现在dopost方法中根本无法获取参数,我尝试打印参数列表也没有,但是在doFet()中是可以获取到参数的,下面是我的代码:public class SendSmsServlet extends HttpServlet {    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        System.out.println("进入dopost方法");
        response.setContentType("text/html;charset=utf-8");
        response.setCharacterEncoding("utf-8");
        request.setCharacterEncoding("utf-8");        String content = request.getParameter("content");
        String mobile = request.getParameter("mobile");
        System.out.println("发送短信的内容:"+content+"手机号:"+mobile);        System.out.println("结束dopost方法");
    }    protected void doGet(HttpServletRequest request, final HttpServletResponse response) throws ServletException, IOException {
        System.out.println("进入doget方法");
        response.setContentType("text/html;charset=utf-8");
        response.setCharacterEncoding("utf-8");
        request.setCharacterEncoding("utf-8");        String content = request.getParameter("content");
               String mobile = request.getParameter("mobile");
        System.out.println("发送短信的内容:"+content+"手机号:"+mobile);
         
        String result = SmsUtils.getResponseStr(SmsUtils.getInputStream(SmsUtils.SERVER_URL, buffer.toString()), "utf-8");
        System.out.println("获取到的结果是:" + result);
        outInfo(response,result);
    }    private void outInfo(HttpServletResponse response,String info) {
        System.out.println("输出信息:" + info);
        try {
            PrintWriter writer = response.getWriter();
            writer.write(info);
            writer.flush();
            writer.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

解决方案 »

  1.   

    发给doPost的form页面做了吗
      

  2.   

    表单提交方式有没有指定method="post"
      

  3.   

    我直接用一个post测试工具做的,测试get通过了,post就是获取不到参数!
      

  4.   

    我用一个post测试工具做的,getparamter()获取不到数据
      

  5.   

    如果是postman工具的话是在body>form-data里面填写参数,我看你的代码并没有什么问题,应该是填参数的时候操作不对
      

  6.   

    指定post Content-type
      

  7.   

    工具应该能查看请求头把,看看请求方式是POST还是GET
      

  8.   

    在doGet()方法第一句加上doPost();
      

  9.   

    Content-Type  设置为  application/x-www-form-urlencoded  应该就可以
      

  10.   

    把代码放进DoGet就好了