Spring注解中能接受客户端传递过来的参数包括路径变量(url),内容变量(http body),头变量(header),COOKIE变量等几类。
1、内容变量
(1)格式形如:
<header>
POST http://localhost:8090/project-web/api/client/saveDelegateRelationPart HTTP/1.1
Accept: application/json, text/javascript, */*; q=0.01
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
<body>
id=6925013&name=zhang
解析方式: @RequestParam Map<String, String> allRequestParams
(2)格式形如:
<header>
POST http://localhost:8090/project-web/api/client/queryProxyRelation HTTP/1.1
Accept: application/json, text/javascript, */*; q=0.01
Content-Type: application/json; charset=UTF-8
<body>
{"id":"6925013","name":"zhang"}
解析方式: @RequestBody Map<String, String> requestBodyParams
总结:
即若客户端通过POST方法,在http body中传递的参数为key=value表单形式,则可用@RequestParam进行解析;若传递的参数为JSON形式,则使用@RequestBody注解进行解析。