Sqids เป็นไลบรารีโอเพนซอร์สที่ช่วยให้คุณสามารถสร้างตัวระบุที่สั้นและไม่ซ้ำกันจากตัวเลขได้ การระบุเหล่านี้ปลอดภัยสำหรับ URL สามารถเข้ารหัสตัวเลขหลายตัวและไม่มีคำหยาบที่พบบ่อย อ่านเพิ่มเติม .
นี่คือรูปแบบของพวกเขา:
ตัวอย่างการเข้ารหัสและถอดรหัสด่วน:
SELECT sqids_encode(1, 2, 3); -- 86Rf07
SELECT sqids_decode('86Rf07'); -- {1,2,3}
หาก ID สั้นเกินไปคุณสามารถเติมขยายความยาว:
SELECT sqids_encode(10::smallint, 1, 2, 3); -- 86Rf07xd4z
SELECT sqids_decode(10::smallint, '86Rf07xd4z'); -- {1,2,3}
สร้าง ID ที่ไม่ซ้ำกันโดยการสลับอักษร:
SELECT sqids_encode('k3G7QAe51FCsPW92uEOyq4Bg6Sp8YzVTmnU0liwDdHXLajZrfxNhobJIRcMvKt', 1, 2, 3); -- XRKUdQ
SELECT sqids_decode('k3G7QAe51FCsPW92uEOyq4Bg6Sp8YzVTmnU0liwDdHXLajZrfxNhobJIRcMvKt', 'XRKUdQ'); -- {1,2,3}
คำแนะนำแบบเต็มอยู่ที่ https://github.com/sqids/sqids-postgresql
หากคุณกำลังมองหา Hashids PostgreSQL เวอร์ชันต้นฉบับคุณสามารถหาได้ที่นี่: https://github.com/iCyberon/pg_hashids
การใช้งานหลักของ Sqids เป็นเพียงแค่การมองเห็น หากคุณต้องการใช้รหัสตัวระบุแทนตัวเลขในโปรเจกต์ของคุณ Sqids อาจเป็นทางเลือกที่ดี