복붙노트

[SPRING] Spring에서 POST 요청을 처리하는이 REST 메서드는 정확히 어떻게 작동하나요?

SPRING

Spring에서 POST 요청을 처리하는이 REST 메서드는 정확히 어떻게 작동하나요?

Spring Core 인증을 받기 위해 공부하고 있으며 Spring MVC에서 ** RESTful webapp *에 대한 연습과 관련하여 의심의 여지가 있습니다.

따라서이 예제에서는 새 Account 개체를 만드는 다음 메서드를 사용합니다.

/**
 * Creates a new Account, setting its URL as the Location header on the
 * response.
 */
@RequestMapping(value = "/accounts", method = RequestMethod.POST)
@ResponseStatus(HttpStatus.CREATED)
public HttpEntity<String> createAccount(@RequestBody Account newAccount,
        @Value("#{request.requestURL}") StringBuffer url) {
    Account account = accountManager.save(newAccount);

    return entityWithLocation(url, account.getEntityId());
}

나는 그것을 안다.

편집 1 :

Location With () 메소드가있는 엔티티는 이전 메소드와 동일한 클래스에 정의되어 있으며이 코드는 다음과 같습니다.

private HttpEntity<String> entityWithLocation(StringBuffer url,
        Object resourceId) {
    // Configure and return an HttpEntity object - it will be used to build
    // the HttpServletResponse
    HttpHeaders headers = new HttpHeaders();
    headers.setLocation(getLocationForChildResource(url, resourceId));
    return new HttpEntity<String>(headers);
}

해결법

  1. ==============================

    1.아래는 귀하의 질문에 대한 나의 이해입니다.

    아래는 귀하의 질문에 대한 나의 이해입니다.

    이 점과 관련하여 귀하의 이해가 정확합니다.

    그것은 request.getRequestURL ()과 같습니다. API 참조

    이 메소드 내부의 코드에 따라.  HTTP 요청이나 응답 엔티티 (헤더와 본문 포함)를 나타내는 HttpEntity 객체를 반환합니다.이 경우 응답입니다.  메소드 내에서 작성된 자원 (계정)의 위치를 ​​추가했습니다.

  2. from https://stackoverflow.com/questions/28650149/how-exactly-works-this-rest-method-that-handle-a-post-request-in-spring by cc-by-sa and MIT license