- Sqids adalah pustaka open-source yang membuat ID bergaya YouTube dari angka
- ID yang dihasilkan pendek, dapat dibuat dengan alfabet kustom, dan dijamin bebas tabrakan
- Contoh ID yang diberikan berbentuk seperti
https://example.com/Lqj8a0
Alasan menggunakan Sqids
- Tujuan utama Sqids adalah untuk efek visual
- Sqids bisa menjadi pilihan yang baik ketika ingin menggunakan ID alih-alih angka di web app
- Contoh penggunaan mencakup pemendekan tautan, penggunaan aman untuk URL, ID acara, encoding/decoding tanpa tabrakan, dan kata sandi sekali pakai
- Tidak cocok untuk data sensitif, dan jika digunakan sebagai user ID jumlah pengguna bisa terekspos
Fitur Sqids
- Dapat membuat ID pendek dari angka non-negatif
- Mudah untuk encoding dan decoding
- ID yang dibuat otomatis tidak mengandung kata kasar umum
- Mendukung pengacakan alfabet untuk ID kustom
- Mendukung 40 bahasa pemrograman, 15 di antaranya memakai desain baru
- Menghasilkan ID yang sama di semua versi
- Ukuran pustaka kecil dan memakai lisensi yang permisif
Opini GN⁺
- Pustaka Sqids berguna bagi pengembang yang ingin memakai ID pendek dan bebas tabrakan sebagai pengganti angka di web app
- Pustaka ini menawarkan ID yang menarik secara visual dan mendukung berbagai bahasa pemrograman sehingga mudah diakses
- Memberikan peluang yang menguntungkan bagi pengembang open-source, dan hak cipta dilindungi melalui lisensi MIT
6 komentar
Cocok untuk mencegah crawling.
Bisakah Anda menjelaskan sedikit lebih lanjut bagaimana penggunaannya dapat mencegah crawling?
Kalau
urlhanya berupaposts/1,posts/2,posts/3, crawler akan mencoba memasukkan 1,2,3,4,5... dan menelusurinya.Kalau
urlberbentuk sepertiposts/L12Qsd,posts/dei24A, sepertinya itu tidak bisa dilakukan.Ah! Terima kasih atas jawabannya.
Saya penasaran apa bedanya dengan hashids, jadi saya cari tahu dan ternyata saat membuka https://hashids.org akan diarahkan ke https://sqids.org/. Sepertinya mereka mengganti namanya.
https://sqids.org/faq#hashids
Opini Hacker News
Kemungkinan memperoleh insight bisnis dari perusahaan yang menggunakan ID berurutan
Keraguan atas penyebutan kode sandi sekali pakai
Kekecewaan karena tidak bisa memformat integer 128-bit atau array byte
Di aplikasi Ruby, menggunakan cara konversi ke basis yang tinggi
Pemfilteran kata kasar bisa menjadi beban tanggung jawab dalam desain
Lebih memilih penggunaan nanoid dan penggunaan kamus karakter yang aman
Diskusi tentang penggunaan string yang dihasilkan secara acak
Kebingungan tentang penyediaan tautan ke 40 bahasa di bagian "Get Started"
Pertanyaan tentang cara menyesuaikan atau mengembangkan blocklist
Banyak orang di thread ini menyebutnya sebagai cara yang baik untuk menyembunyikan insight dari ID/angka