Memahami HTTP Responses (Attaching Headers To Responses, Attaching Cookies To Responses, Cookies & Encryption) Pada Laravel 5


HTTP Responses

#Creating Responses

Strings & Arrays

Semua route dan pengontrol harus mengembalikan respons untuk dikirim kembali ke browser pengguna. Laravel menyediakan beberapa cara berbeda untuk mengembalikan respons. Respons paling dasar adalah mengembalikan string dari route atau pengontrol. Kerangka kerja ini akan secara otomatis mengubah string menjadi respons HTTP penuh:

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

 

Selain mengembalikan string dari route dan pengontrol Anda, Anda juga dapat mengembalikan array. Kerangka kerja akan secara otomatis mengubah array menjadi respons JSON:

Route::get('/', function () {
    return [1, 2, 3];
});

 

Response Objects

 

Biasanya, Anda tidak hanya akan mengembalikan string atau array sederhana dari tindakan rute Anda. Sebagai gantinya, Anda akan mengembalikan contoh penuh Illuminate\HttpResponse atau tampilan.

Mengembalikan Response contoh lengkap memungkinkan Anda untuk menyesuaikan kode status HTTP header dan. Sebuah Response instance mewarisi dari class Symfony\Component\HttpFoundation\Response, yang menyediakan berbagai metode untuk membangun respons HTTP:

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

 

Melampirkan Header Ke Responses

Ingatlah bahwa sebagian besar metode respons dapat dihubungkan dengan rantai, memungkinkan untuk konstruksi yang lancar dari contoh respons. Misalnya, Anda dapat menggunakan headermetode untuk menambahkan serangkaian tajuk ke respons sebelum mengirimnya kembali ke pengguna:

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

Atau, Anda dapat menggunakan withHeadersmetode ini untuk menentukan array header yang akan ditambahkan ke respons:

return response($content)
            ->withHeaders([
                'Content-Type' => $type,
                'X-Header-One' => 'Header Value',
                'X-Header-Two' => 'Header Value',
            ]);
 

Cache Control Middleware

Laravel termasuk cache.headers middleware, yang dapat digunakan untuk dengan cepat mengatur Cache-Control header untuk sekelompok rute. Jika etag ditentukan dalam daftar arahan, hash MD5 dari konten respons akan secara otomatis ditetapkan sebagai pengidentifikasi.

Route::middleware('cache.headers:public;max_age=2628000;etag')->group(function() {
    Route::get('privacy', function () {
        // ...
    });

    Route::get('terms', function () {
        // ...
    });
});

 

Attaching Cookies To Responses

 

metode cookie pada contoh response memungkinkan Anda untuk dengan mudah melampirkan cookies untuk respon. Misalnya, Anda dapat menggunakan cookie metode untuk menghasilkan cookie dan dengan lancar melampirkannya ke contoh respon seperti:

return response($content)
                ->header('Content-Type', $type)
                ->cookie('name', 'value', $minutes);

Metode cookie juga menerima argumen lebih beberapa yang jarang digunakan. Secara umum, argumen ini memiliki tujuan dan makna yang sama dengan argumen yang akan diberikan kepada metode setcookie asli PHP :

->cookie($name, $value, $minutes, $path, $domain, $secure, $httpOnly)

Atau, Anda dapat menggunakan Cookiefasad untuk "mengantri" cookie untuk lampiran ke respons keluar dari aplikasi Anda. The queueMetode menerima Cookiecontoh atau argumen yang diperlukan untuk membuat sebuah Cookie contoh. Cookie ini akan dilampirkan pada respons keluar sebelum dikirim ke browser:

Cookie::queue(Cookie::make('name', 'value', $minutes));

Cookie::queue('name', 'value', $minutes);

 

Cookie & Enkripsi

 

Secara default, semua cookie yang dihasilkan oleh Laravel dienkripsi dan ditandatangani sehingga tidak dapat dimodifikasi atau dibaca oleh klien. Jika Anda ingin menonaktifkan enkripsi untuk subset cookie yang dihasilkan oleh aplikasi Anda, Anda dapat menggunakan $except properti middleware App\HttpMiddlewareEncryptCookies, yang terletak di direktori app/Http/Middleware

/**
 * The names of the cookies that should not be encrypted.
 *
 * @var array
 */
protected $except = [
    'cookie_name',
];

 

Tags

http responses  laravel  tutorial laravel  belajar laravel  

Artikel Menarik Lainnya:

Rekomendasi Artikel


Dasar Pemahaman Ajax yang Harus Diketahui Oleh Para PemulaPenggunaan Form Method Spoofing dan Accessing The Current Route Laravel 5.8Mengenal CSRF Protection Pada Laravel 5.8Pengenalan Controller dan Contoh Penggunaanya Pada Laravel 5.8Memahami HTTP Requests Pada Laravel 5.8 Lengkap

Terbaru dari framework Laravel


Search


Top Stories


  1. Membuat Perulangan Segitiga Bintang Dengan PHP

    on 2018-01-12

  2. Membatasi Jumlah Karakter dengan PHP

    on 2018-01-23

  3. Kenapa Telinga Gatal dan Berair

    on 2018-04-13

  4. Membuat Tanggal dan Zona Waktu Sederhana dengan PHP

    Admin on 2017-11-26

  5. Membuat Paragraf Otomatis dengan Script PHP

    on 2018-01-26

Other Post


Top Videos


  1. Founder SB1M dan Pemilik Distro BLOOP ini BANGKIT dari BANGKRUT 16x dan HUTANG 11M | Christina Lie

    joesep on 2019-06-04

  2. vivo Z1 Pro VS OPPO A9 2020 | Duel HP 3 Jutaan Terbaik 2019!

    joesep on 2019-09-26

  3. FILM Horor Terbaru "SABRINA THE DOLL 2" Full Movie 2018

    Andri03 on 2018-08-01

  4. Sandiaga Uno Resmi Mundur dari Ketua Tim Pemenangan Partai Gerindra

    joesep on 2018-07-31

  5. Aplikasi Kasir Point of Sale Restoran / Kafe Berbasis WEB

    joesep on 2018-08-15

close