Memulai Web Development dengan Laravel - Mensisipkan Middleware di Dalam Request

Memulai Web Development dengan Laravel - Mensisipkan Middleware di Dalam Request

Create: SaldiSaldi | Sabtu, 20 Mei 2017 | 13:45:08 WITA | dibaca: 299

Sesuai dengan namanya, middleware adalah suatu kode yang menjadi penengah bagi suatu aksi sebelum aksi diselesaikan. Di Laravel middleware digunakan untuk menangani proses request dari client sebelum akhirnya memberikan response kepada client.

Beberapa contoh middleware yang biasa digunakan adalah untuk memeriksa apakah client memiliki token yang diperlukan, memeriksa role suatu client apakah admin atau bukan, memeriksa apakah client memiliki sejumlah kriteria tertentu seperti umur, dan lainnya sesuai kebutuhan aplikasi.

Sekarang kita akan mencoba menggunakan middleware sederhana.

Persiapan dan Instalasi

Diasumsikan kamu telah memasang Laravel di mesin kamu dan sudah dapat diakses melalui web browser. Sekarang kita tinggal hanya membuat controller saja untuk keperluan demo saja.

Kita beri nama controller yang akan digunakan dengan nama DemoMiddlewareController.php:

<?php
namespace App\Http\Controllers;
use App\Http\Controllers\Controller;
use Illuminate\Support\Facades\Redis;
class DemoMiddlewareController extends Controller {
public function index() {
echo "Ini adalah index";
}
public function about() {
echo "Ini adalah about";
}
public function contact() {
echo "Ini adalah contact";
}
}

Sekarang silahkan tambahkan juga route untuk DemoMiddlewareController di dalam routes/web.php:

// contoh middleware
Route::get("/demo-middleware", "DemoMiddlewareController@index");
Route::group(["prefix"=>"demo-middleware", "middleware"=>["check_credential"]], function () {
Route::get("/about", "DemoMiddlewareController@about");
Route::get("/contact", "DemoMiddlewareController@contact");
});

Membuat Middleware

Untuk membuat middleware di Laravel, kamu dapat menggunakan artisan command berikut:

$ php artisan make:middleware CheckCredential

Seketika maka akan terbentuk file dengan CheckCredential.php di dalam app\Http\Middleware. Berikut adalah isi dari kode file tersebut:

<?php
namespace App\Http\Middleware;
use Closure;
class CheckCredential
{
/**
* Handle an incoming request.
*
* @param  \Illuminate\Http\Request  $request
* @param  \Closure  $next
* @return mixed
*/
public function handle($request, Closure $next)
{
// your logic is here...
return $next($request);
}
}

Sekarang mari kita tambahkan sedikit kode untuk memperlihatkan bagaimana middleware bekerja:

<?php
namespace App\Http\Middleware;
use Closure;
class CheckCredential
{
/**
* Handle an incoming request.
*
* @param  \Illuminate\Http\Request  $request
* @param  \Closure  $next
* @return mixed
*/
public function handle($request, Closure $next)
{
if ( $request->header('token') == "" && $request->header('email') == "" )
{
return redirect('demo-middleware');
}
return $next($request);
}
}

Pada kode diatas, kamu dapat melihat bahwa ketika melakukan request harus disisipi header token dan email agar dapat melakukan request. Bila kosong maka akan di-redirect ke halaman demo-middleware/index.

Menggunakan Middleware

Untuk menggunakan middeweare cukup mudah. Kamu hanya perlu mendaftarkannya di dalam app\Http\Kernel.php pada bagian routeMiddleware. Silahkan tambahkan CheckCredential ke dalam array tersebut dengan alias check_credential:

..................
/**
* The application's route middleware.
*
* These middleware may be assigned to groups or used individually.
*
* @var array
*/
protected $routeMiddleware = [
'auth' => \Illuminate\Auth\Middleware\Authenticate::class,
'auth.basic' => \Illuminate\Auth\Middleware\AuthenticateWithBasicAuth::class,
'bindings' => \Illuminate\Routing\Middleware\SubstituteBindings::class,
'can' => \Illuminate\Auth\Middleware\Authorize::class,
'guest' => \App\Http\Middleware\RedirectIfAuthenticated::class,
'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class,
'check_credential' => \App\Http\Middleware\CheckCredential::class,
];
}
 SUMBER : https://www.codepolitan.com/memulai-web-development-dengan-laravel-mensisipkan-middleware-di-dalam-request-58f07419669f3  



3 KOMENTAR

college paper writing service | 13 Juli 2017 || 13:06:00
" Immediately confounded with all the accommodating records this is on it. to an incredible degree extraordinary post, precisely what i was watching out and i'm looking for forward to separating your distinctive posts soon. "
Daftar Harga Isuzu | 11 September 2017 || 15:30:49
" bisa digunakan diandroid kah? "
Aakash | 12 September 2017 || 10:15:21
" great and helpful article "



ISI KOMENTAR

NAMA

WEBSITE

KOMENTAR


Captcha Sepakbola
Apakah anda manusia?Lebih baik lagi kalau anda menyukai sepak bola
Sebutkan pemain sepak bola disamping:

Captcha Sepakbola by codingwear






  • PELATIHAN KAMPUS
  • Pelatihan Komputer (DIGITAL SCHOOL)
  • Study Tour GoTv
  • Penerimaan Calon Anggota Angkatan XX "Explore Experience With Us"
  • IT FUN