Thursday, 9 June 2016

Response - Laravel 5


Mumpung hari ini lagi semangat menulis, sepertinya tidak ada salahnya jika melanjutkan kembali pembahasan tentang laravel, selain ini memang php framework yang sedang ngehits saat ini, tapi karena kebetulan hampir semua project yang saya kerjakan saat ini menggunakan Laravel, wow super sekali...

Seperti judul diatas, kali ini kita akan membahas tentang Response, setelah pada artikel sebelumnya kita membahas tentang request, hubungan keduanya amat erat, susah terpisahkan seperti buah dan bijinya atau bahkan piring dengan sendoknya hahaha...

Baiklah, tanpa berlama lama lagi berikut pembahasannya.

DASAR RESPONSE
Setiap Request pasti memiliki response, sedangkan Laravel sendiri memiliki beberapa cara yang berbeda untuk mengembalikan nilai response.
Response dapat dikirim melalui route atau melalui controller, pada dasarnya response yang dikirim sebagai simple string, seperti yang akan saya tunjukkan pada contoh kode dibawah. String ini secara otomatis akan dikenversikan sesuai dengan HTTP response.

Contoh :
1. Tambahkan kode berikut pada file app/Http/routes.php.
Route::get('/basic_response', function () {
    return 'Hello World';
});
2.  Buku URL berikut untuk melakukan basic response
http://localhost:8000/basic_response
3. Outpunya adalah

MENYISIPKAN RESPONSE PADA HEADER
Response dapat disisipkan pada header menggunakan methode header(). kita dapat juga menyisipkan series header seperti ditunjukkan pada contoh kode berikut
return response($content,$status)
           ->header('Content-Type', $type)
           ->header('X-Header-One', 'Header Value')
           ->header('X-Header-Two', 'Header Value');

Contoh Kasus :
Kita akan membuat percobaan untuk menyisipkan Response pada Headers
1. Tambahkan baris kode berikut pada routes.php
Route::get('/header',function(){
    return response("Hello", 200)->header('Content-Type', 'text/html');
});
2. Buku URL berikut pada browser, seperti biasa sebelumnya gunakan perintah php artisan serve
http://localhost:8000/header
3. Outputnya adalah



MENYISIPKAN RESPONSE PADA COOKIE
Setelah pada artikel sebelumnya kita mempelajari bagaimana cara create dan retrive cookie, kali ini kita akan mencoba menyisipkan response pada cookie tersebut.
Seperti yang kita pelajari sebelumnya withcookie() helper methode digunakan untuk menyisipkan sesuatu pada cookie. Cookie yang digenerate dengan methode tersebut dapat disisipkan dengan methode withcookie() dengan response instance. Secara dafault seluruh cookie yang digenerate oleh Laravel akan terenkripsi dan bertanda juga, yang tidak akan dapat dimodifikasi oleh client.

Baiklah tanpa panjanglebar lagi, langsung saja kita masuk kecontoh kasusnya.

1. Tambahkan baris kode berikut pada file routes.php
Route::get('/cookie',function(){
    return response("Hello", 200)->header('Content-Type', 'text/html')->withcookie('name','Apriyandi');
});
2. Buka Browser dengan URL berikut : http://localhost:8000/cookie
3. Outputnya adalah sebagai berikut 
 
JSON RESPONSE
JSON Response dapat dikirim menggunakan json methode, methode ini secara otomatis mengeset Content-Type pada header menjadi application/json. JSON methode akan dikonversikan secara otomatis menjadi array kepada response json yang sesuai.

Contoh Kasus
1. Tambahkan baris kode berikut pada file routes.php
Route::get('json',function(){
    return response()->json(['name' => 'Apriyandi, 'state' => 'Indonesia']);
});
2. Buka URL berikut pada browser : http://localhost:8000/json
3. Output yang dihasilakn adalah
{"name":"Apriyandi","state":"indonesia"} 

Ok, selesailah pembahasan singkat kita kali ini mengenai Response pada Laravel 5, semoga tidak membosankan dan mudah difahami.

Tetap Semangat...

No comments:

Post a Comment