后台controller写了个post请求,现在url那边如何接收参数 10C

public static String sendPost(String url, String param) {
String result = "";
BufferedReader in = null;
try {
URL realUrl = new URL(url);
URLConnection connection = realUrl.openConnection();
//设置网络请求时间最多为5秒;
connection.setConnectTimeout(5000);
//读取网页请求结果时间为15秒
connection.setReadTimeout(25000);
//设置网络请求时间最多为5秒;
// 设置通用的请求属性
connection.setRequestProperty("accept", "*/*");
connection.setRequestProperty("connection", "Keep-Alive");
connection.setRequestProperty("user-agent",
"Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)");
connection.setDoOutput(true);

connection.setDoInput(true);

//设置请求编码格式
connection.setRequestProperty("Accept-Charset", "GBK");
connection.setRequestProperty("contentType", "GBK");
// 获取URLConnection对象对应的输出流

//文件流编码设置
OutputStreamWriter out = new OutputStreamWriter(connection

.getOutputStream(), "GBK");
out.write(param);

        // flush输出流的缓冲  
        out.flush();  
        System.out.println("进入前....");
        in = new BufferedReader(new InputStreamReader(
                connection.getInputStream(),"UTF-8"));
        String line;
        while ((line = in.readLine()) != null) {
            result += line;
        }
    } catch (Exception e) {
        e.printStackTrace();
    }
    // 使用finally块来关闭输入流
    finally {
        try {
            if (in != null) {
                in.close();
            }
        } catch (Exception e2) {
            e2.printStackTrace();
        }
    }
    return result;
} 

//这是我的post请求方法
String url = "http://127.0.0.1:8080/LibrarySyncMdmServer/severe/getPost";
String result=sendPost(url, URLEncoder.encode(context,"UTF-8"));
//这是调用post方法传入的参数

//这是我url的方法,现在我怎么在这个方法里获取,sendPost需要传递的参数 

@Controller
@RequestMapping("/severe")
public class ViewCardNoListServerController extends BaseController {
private static Logger logger = LoggerFactory.getLogger(ViewCardNoListServerController.class);

@RequestMapping("/getPost")
public String getPost(HttpServletRequest request) throws IOException{

    String str1 =request.getParameter("param");

    System.out.println("你已经进入方法。。。。。"+str1);
    return "sucess";
}

}

6个回答

图片说明图片说明

qq_39955352
qq_39955352 这个name 是什么,怎么定义
一年多之前 回复

比较简单的方法就是把你要post的数据编码城url的参数发送,服务端你只解码url参数就可以了。

一般get传输会在URL拼接参数,但是post需要用工具比如postman,谷歌浏览器有这个插件

不理解你这样做的目的,把springmvc get 、post 理解清楚你就不会提这个问题了!

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
response.setContentType("text/html;charset=GBK");
PrintWriter out = response.getWriter();
String l = request.getParameter("length");
String w = request.getParameter("width");
out.println("

");
double m = 0;
double n = 0;
try {
        m = Double.parseDouble(l);
        n = Double.parseDouble(w);
        out.println("矩形的周长是:" + (m + n) * 2);
    } catch (NumberFormatException e) {
        out.println("请输入数字字符!");
    }
    out.println("</html></body>");
    //response.getWriter().append("Served at: ").append(request.getContextPath());
}


http://localhost:8080/WebNow/checkUser?length=12&width=12
//服务器返回的结果
矩形的周长是:48.0

可以使用@RequestBody String param接收吧

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐