w3resource

Laravel (5.7) HTTP Response

A web application responds to a user's request in many ways depending on many parameters. This chapter explains you in detail about responses in Laravel web applications.

Basic Response

Laravel provides several different ways to return a response. Response can be sent either from route or from controller. The basic response that can be sent is a simple string as shown in the below sample code. This string will be automatically converted to an appropriate HTTP response.

Example

Step 1 − Add the following code to app/Http/routes.php file.

app/Http/routes.php

Route::get('/basic_response', function () {
   return 'Hello World';
});

Step 2 − Visit the following URL to test the basic response.

http://localhost:8000/basic_response

Attaching Headers

The response can be attached to headers using the header() method. We can also attach the series of headers as shown in the below sample code.

return response($content,$status)
   ->header('Content-Type', $type)
   ->header('X-Header-One', 'Header Value')
   ->header('X-Header-Two', 'Header Value');

Example

Observe the following example to understand more about Response

Step 1 − Add the following code to app/Http/routes.php file.

app/Http/routes.php

Route::get('/header',function() {
   return response("Hello", 200)->header('Content-Type', 'text/html');
});

Step 2 − Visit the following URL to test the basic response.

http://localhost:8000/header

Attaching Cookies

The withcookie() helper method is used to attach cookies. The cookie generated with this method can be attached by calling withcookie() method with a response instance. By default, all cookies generated by Laravel are encrypted and signed so that they can't be modified or read by the client.

Example

Observe the following example to understand more about attaching cookies

Step 1 − Add the following code to app/Http/routes.php file.

app/Http/routes.php

Route::get('/cookie',function() {
   return response("Hello", 200)->header('Content-Type', 'text/html')
      ->withcookie('name','Virat Gandhi');
});

Step 2 - Visit the following URL to test the basic response.

http://localhost:8000/cookie

JSON Response

JSON response can be sent using the json method. This method will automatically set the Content-Type header to application/json. The json method will automatically convert the array into appropriate json response.

Example

Observe the following example to understand more about JSON Response

Step 1 − Add the following line in app/Http/routes.php file.

app/Http/routes.php

Route::get('json',function() {
   return response()->json(['name' => 'Virat Gandhi', 'state' => 'Gujarat']);
});

Step 2 - Visit the following URL to test the json response.

http://localhost:8000/json

Previous: Laravel (5.7) Requests
Next: Laravel (5.7) Views



Share this Tutorial / Exercise on : Facebook and Twitter