Langsung ke konten utama

Postingan

Menampilkan postingan dari Desember, 2024

ASP.NET Core Request Processing Pipeline

Hai, teman-teman developer! 😄 Kali ini kita bakal ngobrolin tentang ASP.NET Core Request Processing Pipeline dengan contoh biar makin gampang paham.  Apa Itu ASP.NET Core Request Processing Pipeline? Bayangin gini: Pipeline di ASP.NET Core tuh kayak jalur estafet buat menangani permintaan ( request ) dan respons HTTP di aplikasi web kita. Ada beberapa "pos" alias middleware yang punya tugas masing-masing, seperti ngecek otentikasi, routing, logging, hingga enkripsi data. Middleware ini diatur di file Program.cs . Lihat deh diagram ini (bayangin aja, ya 😜): Langkah-Langkah di Pipeline ASP.NET Core Ini dia langkah-langkah yang bakal dilalui permintaan ( request ) di pipeline: Request Semua dimulai dari sini! HTTP request masuk ke pipeline, terus masing-masing middleware bisa ngecek, ngubah, atau nerusin request ke middleware berikutnya. ExceptionHandler Middleware ini bertugas jadi pahlawan kalau ada error nggak terduga. Dia bakal nangkep error, logging, dan k...

ASP.NET Core Middleware

Artikel ini bahas soal middleware di ASP.NET Core pake contoh biar lo gampang paham.  Apa sih Middleware di ASP.NET Core? Middleware itu kayak "pengatur lalu lintas" di aplikasi ASP.NET Core lo. Dia nentuin gimana request (permintaan dari user) sama response (jawaban dari server) diolah. Contohnya, middleware dipake buat autentikasi, autorisasi, error handling , routing, sampe logging. Middleware bakal dijalanin sesuai urutan lo masukin di pipeline, dan biasanya kerjanya gini: Mutusin mau ngelanjutin request ke middleware lain di pipeline atau enggak. Bisa ngerjain sesuatu sebelum/selesai middleware lain di pipeline dijalankan. Oh iya, ASP.NET Core udah sediain banyak middleware bawaan, jadi lo tinggal pake. Tapi kalo perlu yang spesifik buat bisnis lo, bikin aja middleware custom. Yang penting, middleware itu fokusnya harus satu tugas aja alias punya tanggung jawab tunggal. Cara Konfig Middleware di ASP.NET Core Middleware diatur di metode Main() yang ada di kela...

ASP.NET Core AppSettings.json File

Artikel ini bakal ngejelasin pentingnya file AppSettings.json di ASP.NET Core, lengkap sama contohnya.  Sumber Konfigurasi di ASP.NET Core Kalo lo pernah ngoding pake ASP.NET versi lama, pasti tau dong sama file web.config yang biasa dipake buat nyimpen settingan kayak connection string database, API key, detail logging, sama variabel global. Nah, di ASP.NET Core , file web.config udah nggak ada lagi. Sebagai gantinya, ada berbagai sumber konfigurasi yang lebih fleksibel buat nge-manage environment. Beberapa sumber konfigurasi ini adalah: appsettings.json : File JSON buat nyimpen settingan aplikasi secara umum. appsettings.{Environment}.json : File JSON spesifik berdasarkan environment (contoh: Development, Production, Staging) yang override settingan di file utama. Environment Variables : Nilai yang didefinisiin di environment tempat aplikasi running, cocok buat deployment di container. User Secrets : Buat nyimpen data sensitif (contoh: API key, password) selama develop...

Beberapa Library untuk Membuat Aplikasi Console dengan Javascript

Ini adalah catatan yang tidak rapi, sebelum terlupakan. Untuk membuat console aplikasi kita bisa menggunakan https://www.npmjs.com/package/chalk https://www.npmjs.com/package/clui https://www.npmjs.com/package/figlet   https://www.npmjs.com/package/clear   Untuk input outupun kita akan menggunakan https://nodejs.org/api/readline.html Tapi kita akan menggunakan https://www.npmjs.com/package/inquirer Kita juga akan menggunakan  https://www.npmjs.com/package/minimist Untuk memparsinf command line argument chalk  — colorizes the output clear  — clears the terminal screen clui  — draws command-line tables, gauges and spinners figlet  — creates ASCII art from text inquirer  — creates interactive command-line user interface minimist  — parses argument options configstore  — easily loads and saves config without you having to think about where and how. Kita juga akan menggunakan @octokit/rest  — a GitHub REST API client for Node.js @octokit...

Kestrel Web Server di ASP.NET Core

Artikel ini bakal ngejelasin soal Kestrel Web Server di ASP.NET Core, pake contoh juga biar gampang dimengerti. Sebelumnya kita udah bahas hosting model InProcess di ASP.NET Core, nih. Kestrel Web Server Itu Apaan? Jadi gini, ASP.NET Core itu framework lintas platform, artinya lo bisa bikin dan jalanin aplikasi di Windows, Linux, atau macOS. Nah, Microsoft bikin Kestrel jadi web server default buat hosting aplikasi ASP.NET Core di semua platform itu. Kestrel ini ringan, cepet, dan efisien. Cocok banget buat pengembangan atau bahkan langsung di produksi. Nama Proses di Kestrel Web Server Di ASP.NET Core, kode aplikasi lo bakal jalan di worker process Kestrel. Nama prosesnya tergantung gimana lo deploy aplikasinya: Self-Contained Deployment Kalau lo publish aplikasi model ini, runtime .NET-nya sekalian disertakan. Jadi nggak perlu runtime .NET diinstal di host. File eksekusinya spesifik banget ke aplikasinya (misal: FirstCoreWebApplication.exe di Windows). Nama prosesnya sa...

File LaunchSettings.json di ASP.NET Core

Di artikel ini, gue bakal bahas soal file LaunchSettings.json di ASP.NET Core pake contoh biar gampang ngerti.  Apa Itu LaunchSettings.json? Jadi gini, file LaunchSettings.json itu file konfigurasi yang dipake buat ngatur cara aplikasi lo jalan pas lagi ngembangin. File ini dipake sama alat kayak Visual Studio, Visual Studio Code, sama .NET CLI (kayak perintah dotnet run ) buat nyiapin gimana aplikasi lo diluncurin. Biasanya, file ini ada di folder Properties di proyek ASP.NET Core lo. Di file ini, ada beberapa konfigurasi buat "profil" yang ngasih tau cara aplikasi dijalanin. Lo bisa atur environment variables, server (misalnya Kestrel, IIS Express), URL aplikasi, dan lainnya. Dengan gini, lo bisa gonta-ganti konfigurasi tanpa ribet ngubah kode aplikasinya. Setting Penting di LaunchSettings.json Ini dia beberapa hal penting yang lo bisa atur di file ini: Konfigurasi Profil: Bikin beberapa profil buat skenario yang beda (misalnya jalanin pake IIS Express, Kestrel, ...

Model Hosting OutOfProcess ASP.NET Core

Artikel ini bakal ngebahas model hosting Out-of-Process di ASP.NET Core dengan contoh-contoh.  Out-of-Process Hosting Itu Apa, Sih? Dalam model Out-of-Process Hosting , aplikasi ASP.NET Core lo jalan di proses yang beda dari proses web server yang ngatur permintaan HTTP masuk. Jadi, beda sama In-Process Hosting di mana aplikasi lo jalan di proses yang sama dengan web server-nya. Di model ini, IIS atau server lain kayak Apache atau Nginx bakal jadi reverse proxy . Mereka nerima permintaan HTTP dari klien, terus diterusin ke server internal, yaitu Kestrel. Jadi, di sini ada dua server: Server Eksternal : Misalnya IIS di Windows, atau Apache/Nginx di platform lain. Mereka ngatur permintaan klien, load balancing , dan lapisan keamanan. Kalau semuanya oke, permintaan diterusin ke Kestrel. Server Internal (Kestrel) : Ini server bawaan ASP.NET Core buat jalanin aplikasinya. Dia yang ngeproses permintaan dan bikin respon. Pisahan kayak gini bikin Kestrel bisa dioptimalkan buat ekseku...

Apa Itu Entity Framework?

Entity Framework (EF) adalah framework open-source untuk Object-Relational Mapping (ORM) yang digunakan dalam aplikasi .NET. Dengan EF, developer bisa bekerja dengan data relational menggunakan objek domain tanpa perlu memikirkan detail tabel atau kolom database di belakang layar. Singkatnya, EF mengurangi kebutuhan untuk menulis kode akses data manual. Definisi Resmi Entity Framework adalah ORM (Object-Relational Mapper) yang memungkinkan developer .NET bekerja dengan database menggunakan objek .NET. Framework ini mengeliminasi kebutuhan untuk menulis sebagian besar kode akses data manual. Latar Belakang Sebelum Entity Framework Sebelum .NET 3.5, para developer sering menggunakan ADO.NET untuk melakukan operasi CRUD (Create, Read, Update, Delete) dengan database. Proses ini mencakup: Membuat objek koneksi ke database. Membuka koneksi. Membuat objek perintah (command) dan menjalankan perintah menggunakan DataReader atau DataAdapter. Menyimpan data ke dalam DataSet atau DataTable untuk ...

Model Hosting InProcess ASP.NET Core

Mari kita bahas tentang Model Hosting InProcess ASP.NET Core dengan beberapa contoh. Sebelum melanjutkan, pastikan Anda sudah memahami metode Main pada ASP.NET Core yang telah dijelaskan di artikel sebelumnya. Apa itu Hosting? Hosting adalah layanan yang memungkinkan aplikasi web kita diakses melalui internet. Saat membuat aplikasi web, kita memerlukan server tempat menyimpan file aplikasi, database, dan sumber daya lain, yang kemudian dapat dilayani kepada pengguna melalui browser mereka. Apa itu Server Web? Server web adalah mesin fisik atau virtual yang menjalankan perangkat lunak server seperti Apache, Nginx, atau Microsoft IIS (Internet Information Services). Server web bertugas menangani permintaan dari klien (browser), menjalankan logika aplikasi, dan mengirimkan respons kembali ke klien. Model Hosting pada ASP.NET Core Dalam ASP.NET Core, model hosting menentukan cara aplikasi dihosting, dikonfigurasi, dan melayani permintaan HTTP masuk. Ada dua model hosting utama: In...

Metode Main di ASP.NET Core

Hai! Di artikel ini, kita akan ngobrol santai tentang Metode Main di ASP.NET Core.  Fokus utama kita di sini adalah memahami fungsi dari file Program.cs dan apa yang sebenarnya dilakukan oleh Main Method di aplikasi ASP.NET Core (.NET 8). Apa Itu Program.cs di ASP.NET Core? Pas kamu buka file Program.cs di proyek ASP.NET Core, mungkin kamu cuma lihat beberapa baris kode aja. Tapi jangan salah, beberapa baris ini sebenarnya punya tugas berat, seperti: Membuat server web. Mengatur services (kayak logging, dependency injection, dll). Menjalankan aplikasi supaya bisa menerima permintaan HTTP. Apa Itu Top-Level Statements? Kalau saat bikin proyek kamu nggak mencentang kotak "Do not use top-level statements" , maka kamu nggak bakal lihat nama class atau metode Main . Kenapa? Karena sejak C# 9, kamu bisa nulis kode dengan gaya top-level, alias nggak perlu lagi bikin class atau metode eksplisit. Jadi, file itu langsung jadi titik masuk aplikasi. Catatan: Sebelum .NET 6, kit...

File Proyek ASP.NET Core

Hai, mari ngobrol santai soal  file proyek di ASP.NET Core . File ini emang kelihatannya biasa aja, tapi sebenarnya super penting buat ngatur pengaturan proyek kamu, seperti target framework, dependensi, sampai build configuration. Yuk kita bahas pelan-pelan! Apa Itu File Proyek ASP.NET Core? Jadi, waktu kamu bikin proyek di ASP.NET Core pake Visual Studio, otomatis akan ada file proyek yang dibuat: file ini punya ekstensi  .csproj . Tapi, format file proyek di ASP.NET Core beda banget sama versi .NET sebelumnya. Simpel dan lebih rapi! Cara Edit File Proyek ASP.NET Core Mau ngedit file proyek? Gampang kok: Klik kanan nama proyek kamu di  Solution Explorer . Pilih  Edit Project File . File proyek akan kebuka di editor Visual Studio, dan kamu bisa langsung edit! Isi File Proyek ASP.NET Core File proyek ini ditulis dalam format  XML . Di dalamnya ada info-info penting kayak: Dependencies  (pustaka yang dipakai). Build Configuration  (pengaturan build). Ta...

Cara Menguji ASP.NET Core Web API Menggunakan Postman

Di artikel ini, kita akan membahas cara menguji ASP.NET Core Web API menggunakan Postman. Sebelumnya, pastikan Anda telah membaca artikel kami yang membahas cara membuat, membangun, menjalankan, dan menguji aplikasi ASP.NET Core Web API. Artikel ini merupakan kelanjutan dari artikel sebelumnya. Postman adalah alat klien yang digunakan untuk menguji API Restful. Postman dalam Proyek ASP.NET Core Web API Menggunakan Postman dan Swagger untuk menguji layanan Web API merupakan praktik umum dalam pengembangan perangkat lunak. Postman dan Swagger adalah dua alat yang sangat kuat yang memungkinkan Anda untuk berinteraksi dengan dan menguji API Anda. Dalam artikel ini, saya akan menjelaskan cara menggunakan Postman, dan pada artikel berikutnya, saya akan membahas cara menguji ASP.NET Core Web API menggunakan Swagger. Berikut adalah panduan langkah demi langkah untuk menguji proyek Web API Anda menggunakan Postman: Langkah 1: Menginstal Postman Jika Anda belum menginstal Postman, unduh dan ...

Memahami Middleware dalam Express.js

Middleware adalah salah satu konsep paling fundamental dan powerful dalam Express.js. Mereka adalah fungsi yang memiliki akses ke request object (req), response object (res), dan fungsi next() dalam siklus request-response aplikasi Express.js. Middleware memungkinkan Anda untuk menambahkan fungsionalitas ke aplikasi Anda dengan cara yang modular, terorganisir, dan efisien. Cara Kerja Middleware Middleware bekerja seperti serangkaian pipa atau rantai. Setiap middleware dalam rantai menerima request dan response object, dapat melakukan beberapa tindakan (misalnya, memodifikasi request atau response , melakukan logging, otentikasi, otorisasi, menangani kesalahan), dan kemudian meneruskan kontrol ke middleware berikutnya dalam rantai dengan memanggil fungsi next() . Jika sebuah middleware tidak memanggil next() , maka siklus request-response akan berhenti di middleware tersebut. Membuat Middleware Kustom Anda dapat membuat middleware kustom untuk tugas-tugas spesifik dalam aplikasi...