Request là một khái niệm phổ biến trong lập trình. Với người mới tìm hiểu về Laravel sẽ cảm thấy hơi khó hiểu về nó. Vậy Request trong Laravel là gì? Làm sao để viết lệnh thực thi một Request? Chắc chắn bạn sẽ cần tham khảo bài viết dưới đây.
Request Laravel là gì?
Request hiểu một cách đơn giản nhất đó là yêu cầu được gửi từ máy khách (Client) tới Server.
Giả sử khi người dùng nhập URL vào trình duyệt của họ, trình duyệt sau đó sẽ gửi yêu cầu đến máy chủ, đó chính là Request.
Trong Laravel để Request hoạt động cần sử dụng tới IlluminateHttpRequest. Thông qua đó nó sẽ trả về nhiều thông tin như:
- Request URI
- Kiểm tra phương thứcRequest
- Request Input
- Request Cookies
- Request Files
Cách sử dụng Request Laravel
Để cho dễ hiểu khái niệm bạn hãy bắt tay vào thực hành bài tập sau.
Dùng Migration để tạo một Controller tên là RequestController.php
php artisan make:controller RequestController
Request URI
Thếm một vài dòng lệnh để Request
Tại file web.php
thêm
Route::get('display_data/', 'AppHttpControllers[email protected]_data');
Và trong RequestController.php
<?php namespace AppHttpControllers; use IlluminateHttpRequest; use DB; class RequestController extends Controller { public function display_data(Request $request){ $url = $request->url(); echo $url; } }
Gõ đường dẫn https://localhost/thu_muc/display_data/
lên trình duyệt
Và bạn sẽ thấy xuất hiện một đường dẫn trả về.
Ngoài ra bạn cũng hãy thử
$uri = $request->path();
Request dữ liệu từ Form
Trong bài viết Bài 5: Thêm dữ liệu vào Database trong Laravel thì bạn sẽ sử dụng Request thông tin từ Form. Sau đó tới Controller và đi tới Cơ sở dữ liệu. Bạn hãy đọc qua về bài đó để hiểu hơn.
Bây giờ mình sẽ thực hành không ghi vào Database mà chỉ đơn thuần lấy dữ liệu rồi đưa ra màn hình thôi.
public function insert_data(Request $request) { $name = $request->input('name'); echo $name; }
Phương thức Request
Kiểm tra phương thức
$method = $request->method();
Hoặc có thể dùng điều kiện if để check
if ($request->isMethod('post')) { echo 'Đây là phương thức Post'; } elseif ($request->isMethod('get')) { echo 'Đây là phương thức Get'; }
Đây mới chỉ là những kiến thức cơ bản để hiểu được cách thức hoạt động của Request. Bạn có thể nghiên cứu sâu hơn tại đây. Nắm vững được Request trong Laravel sẽ giúp bạn làm việc dễ dàng hơn.