Bài 9: Laravel – Response
Basic Response Mổi request có một response. Laravel cung cấp một vài cách khác nhau để trả về response. Response có thể gửi từ route hoặc từ controller. Basic response có thể sẽ gửi là một chuỗi đơn giản như ví dụ dưới. Chuỗi này sẽ tự đọng chuyển đến HTTP response thích hợp. ...
Basic Response
Mổi request có một response. Laravel cung cấp một vài cách khác nhau để trả về response. Response có thể gửi từ route hoặc từ controller.
Basic response có thể sẽ gửi là một chuỗi đơn giản như ví dụ dưới.
Chuỗi này sẽ tự đọng chuyển đến HTTP response thích hợp.
Example
Step 1: thêm code sau trong file định tuyến
Route::get(‘/basic_response’, function () {
return ‘Hello World’;
});
Step 2: chạy http://localhost:8000/basic_response
Step 3: output
Sẽ là một chuỗi “Hello World” trên màn hình.
Attaching Headers
Response có thể đính kèm tới header bằng cách sử dụng phương thức header(). Chúng ta cũng có thể đính kèm nguyên serial của header luôn.
Code mẩu:
return response($content,$status)
->header(‘Content-Type’, $type)
->header(‘X-Header-One’, ‘Header Value’)
->header(‘X-Header-Two’, ‘Header Value’);
Example
Step 1: thêm code định tuyến sau:
Route::get(‘/header’,function(){
return response(“Hello”, 200)->header(‘Content-Type’, ‘text/html’);
});
Step 2: chạy http://localhost:8000/header
Step 3: output
Attaching Cookies
Với helper withCookie() sẽ dùng để đính kèm cookies trong response. Cookie tạo ra với phương thức này có thể được đính kèm bằng cách gọi phương thức withCookie() với response instance. Mặc định, tất cả cookie tạo ra bằng Laravel được mã hóa và ký tên vì vậy chúng không thể thay đổi và đọc được từ client.
Example
Step 1: thêm code sau vào file định tuyến
Route::get(‘/cookie’,function(){
return response(“Hello”, 200)->header(‘Content-Type’, ‘text/html’)
->withcookie(‘name’,Ku Tin’);
});
Step 2: chạy http://localhost:8000/cookie
Step 3: output
chuỗi hello world trên màn hình.
Đến đây thì cookie đã được trả về cùng với response và bạn có thể sử dụng cookie.
JSON Response
JSON response có thể được gửi bằng cách sử dụng phương thức json. Phương thức này sẽ tự động set Content-Type header tới application/json. Phương thức json tự động chuyển mãng vào response json thích hợp.
Example
Step 1: thêm code sau vào file định tuyến
Route::get(‘json’,function(){
return response()->json([‘name’ => ‘Ku Tin’, ‘state’ => ‘TpHCM’]);
});
Step 2: http://localhost:8000/json
Step 3: output
Note: chúng ta k thực hành trên controller cho các ví dụ trên, các phương thức sử dụng trong đối tượng response cũng được sử dụng như thế nếu trong controller các bạn use namespace IlliminateHttp esponse vào.
Bài tập:
Hãy thực hiện response trong bài học này nhưng thực hiện trên các phương thức của Controller.