zoukankan      html  css  js  c++  java
  • Struts2中如何接收另一个action 或者JSP页面经过POST方法传过来的字符串

    经验总结:

    最近在用struts2 写接口,要给请求者返回一个json字符串,但是,请求是用POST请求的,各种方法尝试,最后终于得到了答案:

    /**
         * 封装接收客户端传过来的post数据
         * @param ctx ActionContext的对象 
         * @return
         */
        public static String getRequestBody(ActionContext ctx){
            try {
                HttpServletRequest request = (HttpServletRequest)ctx.get(ServletActionContext.HTTP_REQUEST);
                InputStream inputStream = request.getInputStream();
                String strMessage = "";
                StringBuffer buff = new StringBuffer();
                BufferedReader bufferReader = new BufferedReader(new InputStreamReader(inputStream,"utf-8")); 
                while((strMessage = bufferReader.readLine()) != null){
                    buff.append(strMessage);
                }
                bufferReader.close();
                inputStream.close();
                return buff.toString();
            } catch (Exception e) {
                e.printStackTrace();
            }
            return null;
        }

    经过这个方法后,在另一个需要使用到POST的json的时候,只需要

    ActionContext ctx = ActionContext.getContext();
    String json = getRequestBody(ctx);

    上面那个json就是POST中的json数据.

  • 相关阅读:
    poj 3111 卖珠宝问题 最大化平均值
    如何在b站上传高码率视频
    AC自动机总结
    NOIP2018 旅行
    NOI2008 假面舞会 DFS
    鸽子的记录
    Unity学习笔记
    LuoguP1196 [NOI2002]银河英雄传说 并查集
    Luogu1801 黑匣子 堆
    Luogu P1321 单词覆盖还原 字符串
  • 原文地址:https://www.cnblogs.com/llynic/p/6613515.html
Copyright © 2011-2022 走看看