《springboot》后端接收Content-Type :application/json类型的数据, 前端传参

时间:2025-02-16 12:15:33

Content-Type的几种类型

/x-www-form-urlencoded  传key-val

application/x-www-form-urlencoded:浏览器默认请求,以键值对的形式k1=v1&k2=v2

可以使用springMVC默认的自定义参数接收,也可以通过@requestParam()注解接收,或者对象接收

/json  传json

application/json:是以json字符串的格式请求

application/json:只能以@requestBody注解接收对象,但是springMVC中用@requestBody之后就不能接收单个参数了

springboot接收

	@RequestMapping(value ="/md5" ,produces = "application/json;charset=UTF-8")
	public String md5(@RequestBody ParamsBean bean) {
		
		(());

		return "md5";
	}

/xml 传 html

前端传字符串流, 传html


	    var context = "/db";
		var contentStr = "13888888888"
		("---------前端传输-------------", contentStr);
	      $.ajax({
	          type: "POST",
	          url: context + "/demo/stream",
	          async: false, 
	          data: contentStr,
	          success: function(res){
	          		("-----------后端返回----------", );
	          }
	     });

后端接收



	@RequestMapping("/request")
	void request(HttpServletRequest request, HttpServletResponse response) {
        //这是个参数bean
        AppObtainTokenParam param =null;

		try {
			BufferedReader streamReader = new BufferedReader( new InputStreamReader((), "UTF-8"));
			StringBuilder responseStrBuilder = new StringBuilder();
			String inputStr;
			while ((inputStr = ()) != null){
				(inputStr);
			}

			(responseStrBuilder .toString());
		} catch (Exception e) {
			();
		}
	}

4. multipart/form-data 上传文件

POST 数据提交的方式。我们在使用表单上传文件时,必须让 form 的 enctyped 等于这个值。