[SPRING] 요청 URL을 기반으로 다른 URL에 동일한 URL 매핑
SPRING요청 URL을 기반으로 다른 URL에 동일한 URL 매핑
요청 본문에만 기반하여 RestController 클래스의 다른 메서드에 동일한 URL을 매핑 할 수 있는지 알고 싶습니다. 예 :
@RequestMapping(value="/delete", method=RequestMethod.POST )
public void delete(@RequestBody String id) {
//do something
}
@RequestMapping(value="/delete", method=RequestMethod.POST )
public void delete(@RequestBody Book book) {
//do something
}
요청 본문은 항상 JSON 페이로드입니다. 그것이 { "id": "foo"}라면 첫 번째 메서드를 호출하고 싶습니다. 요청 본문 :
{
"title":"Spring Guide",
"author":"John Doe"
}
두 번째 방법을 호출하고 싶습니다. 이것이 가능한가?
해결법
-
==============================
1.페이로드만으로 차별화 할 방법은 없습니다.
페이로드만으로 차별화 할 방법은 없습니다.
여기에서 한 테스트와 M. Deinum과 Ali Dehghani의 답변을 토대로이 작업을 수행하는 가장 좋은 방법은 각각의 경우마다 다른 URL을 갖는 것입니다. 따라서 / books / {id}는 ID로 삭제하고, / books는 본문에있는 객체의 JSON과 함께 객체 전달을 삭제합니다. 모든 주셔서 감사합니다.
from https://stackoverflow.com/questions/36483664/mapping-the-same-url-to-different-methods-based-on-request-body-in-spring by cc-by-sa and MIT license
'SPRING' 카테고리의 다른 글
[SPRING] WAS 8.5 및 java 1.7로 마이그레이션 한 후 javax.naming.ConfigurationException (0) | 2019.05.16 |
---|---|
[SPRING] JPQL에서 별칭을 사용하는 방법 (0) | 2019.05.16 |
[SPRING] 봄 MVC HTTP 상태 400 - 잘못된 요청 (0) | 2019.05.15 |
[SPRING] Spring은 상태 비 저장 세션 관리에도 불구하고 JSESSIONID를 추가한다. (0) | 2019.05.15 |
[SPRING] javax.naming.NameNotFoundException : 이름 [comp / env]가이 Context에 바인드되어 있지 않다 (0) | 2019.05.15 |