WebSocket Dasar
Penjelasan
Genie punya dukungan WebSocket bawaan lewat modul `Genie.WebChannels`, tanpa perlu package tambahan seperti Socket.IO di framework lain. Channel didaftarkan mirip route HTTP biasa, dan pesan bisa dikirim dua arah antara server dan browser secara realtime. Fitur ini sering dipakai untuk dashboard data science interaktif — misalnya mengirim update hasil komputasi Julia secara langsung ke browser tanpa perlu polling berulang dari sisi client.
Contoh Konsep
using Genie.WebChannels
using Genie.Router
route("/") do
Genie.Renderer.Html.html("index.jl.html")
end
channel("/notifikasi") do
pesan = Genie.WebChannels.message
"Server menerima: $pesan"
end
# Di sisi JavaScript browser (dari view)
# Genie.WebChannels.sendMessageTo("notifikasi", "Halo server")
Praktikum
Buat channel WebSocket "/harga-saham" yang membalas pesan dengan menambahkan awalan "Update: " di depan pesan yang diterima.
Ketik/edit bebas di sini untuk latihan — kode ini tidak dijalankan.
Tips
Pastikan channel WebSocket punya nama unik yang tidak bentrok dengan path route HTTP biasa, supaya tidak membingungkan saat debugging.