Home  >  Q&A  >  body text

java test post request how to set parameters passed in the body and how to receive them

public String post(String strURL,String params) {

    System.out.println(strURL);
    System.out.println(params);
    try {
        URL url = new URL(strURL);// 创建连接 
        HttpURLConnection connection = (HttpURLConnection) 
        url.openConnection(); 
        connection.setDoOutput(true); 
        connection.setDoInput(true); 
        connection.setUseCaches(false); 
        connection.setInstanceFollowRedirects(true); 
        connection.setRequestMethod("POST");// 设置请求方式   
        connection.setRequestProperty("Accept","application/json");// 设置接收数据的格式   
        connection.setRequestProperty("Content-Type","application/json");// 设置发送数据的格式   
        connection.connect(); OutputStreamWriter out = new OutputStreamWriter( connection.getOutputStream(),"UTF-8");// utf-8编码   
        out.append(params); out.flush(); out.close(); // 读取响应   
        int length = (int) connection.getContentLength();// 获取长度   
        InputStream is = connection.getInputStream(); 
        if (length != -1){
            byte[] data = new byte[length]; 
            byte[] temp = new byte[512]; 
            int readLen = 0; int destPos = 0; 
            while ((readLen = is.read(temp)) > 0){
                System.arraycopy(temp, 0, data, destPos, readLen); 
                destPos += readLen; 
            }
            String result = new String(data, "UTF-8");
            System.out.println(result); 
            return result; 
        } 
    } catch (Exception e) {
        // TODO: handle exception
        e.printStackTrace();
    }
    return "error";
    
}
@RequestMapping(value="/text", method = RequestMethod.POST)
@ResponseBody
public String text(HttpServletRequest request,HttpServletResponse response,@RequestBody   String t){
    System.out.println(t);
    
    
    return "DetailedRules";
}
某草草某草草2702 days ago1290

reply all(3)I'll reply

  • 習慣沉默

    習慣沉默2017-05-27 17:42:57

    You can use Paw or Insomnia or ARC to test without writing code

    reply
    0
  • 天蓬老师

    天蓬老师2017-05-27 17:42:57

    conn.setParam sets parameter value. . . Next fiddler, debugging is fast

    reply
    0
  • 某草草

    某草草2017-05-27 17:42:57

    If you just test the interface, just use postman in chrome to test it

    reply
    0
  • Cancelreply