카테고리 없음

laravel 라라벨 return

백위한 2024. 5. 9. 18:53

모든 경로와 컨트롤러는 사용자의 브라우저로 전송할 응답을 반환해야 한다.

 

프레임워크는 문자열을 전체 HTTP 응답으로 자동 변환하고 배열은 JSON 응답으로 자동 변환한다.

 

일반적으로 라우팅 액션은 단순한 문자열이나 배열만 반환하지는 않는다.

대신 전체 Illuminate\Http\Response 인스턴스 또는 뷰를 반환한다.

 

Redirect 응답은 사용자를 다른 URL로 리디렉션하는 데 필요한 적절한 헤더를 포함하는 Illuminate\Http\RedirectResponse 클래스의 인스턴트이다. RedirectResponse 인스턴트를 생성하는 가장 간단한 방법은 글로벌 redirect 헬퍼를 사용하는 것이다.

 

Route::get('/dashboard', function () {
    return redirect('home/dashboard');
});

 

매개변수 없이 redirect 헬퍼를 호출하면 Redirector 인스턴스에서 모든 메서드를 호출할 수 있다.

 

예를 들어, 명명된 경로에 대한 RedirectResponse를 생성하면 route 메서드를 사용할 수 있다.

 

return redirect()->route('login');

 

컨트롤러 액션에 대한 리디렉션을 생성할 수도 있다.

컨트롤러와 액션 이름을 action 메서드에 전달한다.

 

use App\Http\Controllers\UserController;
 
return redirect()->action([UserController::class, 'index']);

 

응답의 컨텐츠로 뷰를 반환해야 하는 경우에는 view 메서드를 사용한다.

 

return response()
            ->view('hello', $data, 200)
            ->header('Content-Type', $type);