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: 454

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  



10 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 "
sewa mobil pajero | 25 September 2017 || 14:45:55
" thanks for sharing "
klg bandung | 14 Oktober 2017 || 08:36:14
" Much thanks to you a great amount for this and continue sharing. "
Jasa Sedot Wc | 20 Oktober 2017 || 13:23:16
" artikelnya bagus dan mudah di pahami "
Obat Aborsi Ampuh | 21 Oktober 2017 || 03:40:33
" I love your post here is more information for us thanks for sharing with us. "
Safari Browser for Android | 21 Oktober 2017 || 11:31:18
" Apple was widely criticized when it originally launched a very buggy and unstable version of Safari for Windows.Download Safari Browser for Windows. Experience the web, Apple style, with Safari. "
bodak yellow lyrics | 25 Oktober 2017 || 11:10:48
" Thanks to your guide I also developed my web in this direction. Thank you "
Mobdro Download | 25 Oktober 2017 || 12:09:33
" Download Mobdro for PC or Windows 10/8.1/7 Guide.Tutorial how to download latest Mobdro Apk (App) 2016 & install Mobdro for Android smartphone or tablets to enjoy free video streams & live TV shows. "



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








  • $DCC = NEW XXI("Solidaritas","Loyalitas","Kualitas");
  • PELATIHAN KAMPUS
  • Pelatihan Komputer (DIGITAL SCHOOL)
  • Study Tour GoTv
  • IT FUN