Langsung ke konten utama

Decorator Bagian 1 | 6 Belajar REST API Dengan Python Flask

Di tutorial sebelumnya kita sudah memakai decorator route yang berada di class flask, selain itu kita juga sudah belajar membuat dan memakai decorator buatan sendiri, di tutorial kali ini kita akan mencoba memahami penggunaan decorator lebih dalam.

Decorator sebenarnya hanya sebuah method biasa pada umumnya, namun berbeda, bedanya hanya pada parameter yang dia terima, parameter yang di terima oleh decorator ialah sebuah method juga, decorator ini bisa juga di sebut wrapper ( method pembungkus ) yang berfungsi untuk mengolah method lain.

Untuk latihan decorator bisa mencoba kode berikut :
Dari kode di atas, kita ketahui:
  • method yang bernama contoh_decorator adalah sebuah decorator
  • untuk menggunakan decorator kita cukup menggunakan simbol @ di depan nama decorator.
  • untuk memasukkan method ke dalam decorator kita cukup mendeklarasikannya setelah pemanggilan dekorator. 
  • Jadi, method yang bernama coba dan coba_gan akan masuk kedalam decorator yang bernama contoh_decorator, langsung di eksekusi kemudian akan di kelolah oleh decorator tersebut.

Simple Login Flask

Kita bisa membuat decorator sendiri untuk flask, misalnya decorator yang berfungsi untuk mencegah user mengakses route tertentu jika dia belum login, namun sebelum kita membuat decorator tersebut kita akan belajar alogritma sistem login di flask secara simplenya, berikut contohnya :

kita perlu beberapa bahan, silahkan di import beberapa paket dari flask :
kemudian deklarasi flask dengan memasukkannya kedalam variabel yang bernama app,  lalu buat variabel session_nya yang nantinya berfungsi untuk menyimpan sesi user yang login, seperti berikut: buat empat buah route, seperti ini :
seperti yang terlihat disana, kita membuat empat buah route yang dimana methodnya menggunakan variabel session_nya sebagai pemilihan response yang akan di berikan ke user, penjelasannya seperti berikut :
  • Variabel session_nya merupakan variabel yang berfungsi untuk menyimpan session user yang sedang login
  • Pada route /login kita memasukkan satu nilai dari dictionary session_nya dengan key user dan value arian, sebagai simulasi data user yang login.
  • Pada route /home kita akan bisa melihat kalimat "hai arian" jika variabel session_nya sudah di isi dengan key user, untuk mengisi key tersebut ialah cukup dengan pergi ke route /login seperti penjelasan tadi, jika tidak maka route tersebut akan menampilkan pesan "anda belum login", ini sama halnya dengan route /setting. 
  • Pada route /logout kita mengeluarkan isi dictionary session_nya yang keynya adalah user untuk simulasi logout dari user
  • method abort yang di import dari flask adalah method yang di khususkan untuk menampilkan response error dengan kode tertentu, anda bisa cari tahu arti dari kode error disini, https://developer.mozilla.org/id/docs/Web/HTTP/Status, selain itu kita juga bisa membuat method response sendiri, kita akan bahas di postingan kedepannya.
Jangan lupa gunakan method run untuk menjalankan aplikasi flask jika script tersebut di eksekusi : 

save dengan nama terserah anda, misalnya aplikasi.py
untuk full codenya anda bisa lihat disini :
Kemudian eksekusi dengan python di terminal : 
start flask
Kita sudah berhasil membuat sistem login, namun masalahnya jika satu perangkat(hp/laptop/dll) melakukan login maka di semua perangkat juga akan berstatus login, knp ? karena semua user mengakses variabel yang sama, yaitu variabel yang bernama session_nya dan tak ada yang membuatnya berbeda, ini terlihat aneh namun cukup untuk memberi gambaran bagaimana sistem login di flask.

Agar semua user tidak memakai session yang sama, kita bisa membuatnya sendiri, flask  sudah menyediakan variable session yang digunakan untuk mengolah dan mengatur session user, kita akan belajar ini di postingan selanjutnya.

Terimakasih

Komentar

Postingan populer dari blog ini

Situs Belajar Coding Dapat Sertifikat Untuk Pekerjaan

Situs belajar bahasa pemrograman yang akan saya bagikan pada tulisan kali ini akan adalah situs yang bisa membuat anda mendapatkan pekerjaan dan yang pastinya materi dari situs yang saya pilih ini adalah materi yang berstandar internasional. Kelebihan dari memilih courses online dari pada membaca ebook atau menonton video tutorial di youtube adalah kita akan mendapatkan sertifiat, diamana sertfikat tersebut bisa kita gunakan untuk mendapatkan pekerjaan, dan berita bagus bagi para freelancer yaitu adanya linkedin situs yang mempermudah pertemuan antara pencari pekerjaan dengan perekrut dari suatu perusahaan, disana kita bisa menambahkan sertifikat, pengalaman kerja, keahlian yang kita miliki dan masih banyak lagi, selain itu kita juga bisa print profil kita menjadi sebuah portofolio berbentuk file PDF. Dari pengalaman saya sendiri yaitu selain mendapatkan tawaran pekerjaan saya juga sering di mendapatkan client yang memesan untuk di buatkan suatu aplikasi dan itu sering menjadi

Flutter Tutorial Indonesia | 1 Pendahuluan

Setelah rilisnya bahasa pemrograman Dart yang di kembangkan oleh google pada tahun 2011 kini bahasa tersebut sudah memiliki framework yang bisa digunakan untuk membuat aplikasi moile yaitu untuk android dan ios sekaligus dalam satu waktu. Flutter juga digunakan sebagai framework utama dalam pengembangan aplikasi untuk OS Google Fuchsia. Tentang Flutter : Menggunakan Library Grafik Google Skia untuk mesin rendernya, alias tidak menggunakan bawan dari android atau iOS, dan ini yang membuat tampilan di android, iOS, atau desktop tetap sama. Semua UI adalah Widget Rendering Lebih Cepat Tidak hanya untuk membuat UI Flutter juga untuk menangani aliran data dan status data yang rumit dengan cara yang elegan dengan model Reactive. Dalam acara Google I/O 2018 menyatakan bahwa sekarang sudah menyediakan dokumentasi yang lengkap di flutter.dev dan anda bisa langsung belajar framework ini dari dokumentasi tersebut atau bisa mengambil courses di udacity atau tempat courses lainnya sep

Flutter Tutorial Indonesia | 3 Aplikasi Pertama

Dalam sesi ini kita akan membuat aplikasi sederhana sebagai pembukaan dari beberapa tutorial yang akan disampaikan pada blog ini, sebagai dasar pemahaman pada pembahasan ini kita juga akan belajar mengenai struktur dasar dari project flutter. jika anda masih ragu dengan flutter, silahkan baca ini  https://flutter.dev/docs/resources/technical-overview Oke, sebelum membuat project baru, pastikan flutter sdk sudah siap digunakan, untuk mengaturnya anda bisa melihat pada tutorial sebelumnya. 1.Langkah Pertama : Membuat project baru untuk membuat project baru di terminal cukup ketik : flutter create namaaplikasi setelah project jadi, anda akan melihat beberapa kode yg disediakan sebagai contoh aplikasi sederhana dari flutter. 2. Pembahasan mengenai kode Sekarang anda mungkin penasaran dari mana proses awal aplikasi itu dijalankan. . ? Pada aplikasi flutter, file main.dart yang terletak pada folder lib merupakan file dart yang pertama kali di eksekusi, dan akan langsung me