Springboot은 GET와 POST 요청을 모두 지원하는 인터페이스 방법을 정의합니다.
1722 단어 Java 개발
일반적으로 다음과 같이 씁니다.
@RequestMapping(method = RequestMethod.GET)
String get() {
return "from get";
}
@RequestMapping(method = RequestMethod.DELETE)
String delete() {
return "from delete";
}
@RequestMapping(method = RequestMethod.POST)
String post() {
return "from post";
}
@RequestMapping(method = RequestMethod.PUT)
String put() {
return "from put";
}
만약 인터페이스 방법이 GET/POST 두 가지 요청 방식을 동시에 지원해야 한다면 어떻게 해야 합니까?다음과 같은 쓰기 방법을 사용하여 해결할 수 있습니다.
@RequestMapping(value = "/test", method = {RequestMethod.GET,RequestMethod.POST})
@ResponseBody
public String test(HttpServletRequest request) {
//
Set> set = showParams(request).entrySet();
for (Map.Entry entry : set) {
if (!entry.getKey().toString().equals("submit")) {
log.info("param:{}={}", entry.getKey().toString(), entry.getValue().toString());
}
}
return "ok";
}
private Map showParams(HttpServletRequest request) {
Map map = new HashMap();
Enumeration paramNames = request.getParameterNames();
while (paramNames.hasMoreElements()) {
String paramName = (String) paramNames.nextElement();
String[] paramValues = request.getParameterValues(paramName);
if (paramValues.length == 1) {
String paramValue = paramValues[0];
if (paramValue.length() != 0) {
map.put(paramName, paramValue);
}
}
}
return map;
}
관건은 이 줄입니다: @RequestMapping (value = "/test",method = {RequestMethod.GET, RequestMethod.POST})
참조 출처:https://www.oxingsoft.com/blog/article/19.html
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Eclipse 주석 날짜 형식Eclipse neon 버전 이전에 자동 주석 생성 날짜는 ${date}만 사용할 수 있습니다. 그 형식은 로컬 기본 형식입니다. 예를 들어 "xxx년 xx월 xx일". 수정하려면plugin에서 org를 수정해야 합...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.