본문 바로가기
springboot

[springboot] HTTP 상태 코드 및 리다이렉트

by 개발LOG 2024. 4. 6.
상태 코드 의미
1xx 정보성 상태 코드 요청 받았으나 무언가 계속되는 상태를 나타냄
2xx 성공 요청을 성공적으로 수신/이해/수락 했다는 의미
3xx 리다이렉트 의미 301: 요청을 서버에서 처리하지 않고 다른곳으로 유도한다. 리다이렉트되는 경우 2번의 HTTP 트랜잭션이 발생한다.
4xx 클라이언트 요청 오류 404: 없는 url 요청 했을 때
400: 파라미터 없을 때
5xx 서버 오류 서버에서 요청 처리하는 과정에서 문제

 

 

스프링부트 @RestController에서 리다이렉트 방법:

package com.pnow.controller;

import org.springframework.http.HttpHeaders;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
import java.net.URI;


@RestController
public class RedirectController {
    @GetMapping("/redirectToTarget")
    public ResponseEntity redirectToTarget(){
        HttpHeaders headers=new HttpHeaders();
        headers.setLocation(URI.create("/targetOfRedirect"));
        return new ResponseEntity<>(headers, HttpStatus.MOVED_PERMANENTLY);
    }
    @GetMapping("/targetOfRedirect")
    public String targetOfRedirect(){
        return "This is Redirect!";
    }

}