ข้ามไปยังเนื้อหา

เริ่มต้นอย่างรวดเร็วบนเว็บ

ในอีกไม่กี่นาที เว็บไซต์ของคุณจะอ่าน feature flag ของจริง — พร้อมแคชที่ทนทาน คำตอบแบบ fail-safe สำหรับทุกสถานการณ์ และไม่มีอะไรให้คุณต้องจัดการในเบราว์เซอร์

ไม่มี runtime dependency SDK ทั้งตัวอยู่ใต้เพดาน 10 kB gzip

SDK อยู่ในรีโพซิทอรีสาธารณะบน GitHub — ติดตั้งจากตรงนั้นได้เลย โดยปักหมุดไว้ที่รีลีส

Terminal window
npm install github:FortressFlag/FortressFlag_SDK_web#v1.0.0

แพ็กเกจจะ build ตัวเองตอนติดตั้ง และ import ด้านล่างคือ entry point ของมัน

ครั้งเดียว ช่วงต้นของการ bootstrap หน้าหรือแอปของคุณ

import { Environment, FortressFlag } from "@fortressflag/sdk-web";
FortressFlag.start({
sdkKey: "ffc_prod_…", // จากหน้าจอคีย์ SDK ของโปรเจกต์คุณ
environment: Environment.PRODUCTION,
});

start คืนค่าทันที ค่าในแคชจากการเข้าชมครั้งก่อนพร้อมใช้ทันที และค่าใหม่มาถึงในเบื้องหลัง คีย์นี้คือคีย์ไคลเอนต์ — มันมองเห็นได้ในซอร์สของหน้าคุณโดยการออกแบบ

if (FortressFlag.isEnabled("new-checkout", false)) {
// เรนเดอร์หน้าชำระเงินใหม่
}

stringValue และ numberValue อ่าน flag แบบหลายตัวแปรด้วยวิธีเดียวกัน และ FortressFlag.onChange บอกคุณเมื่อค่าขยับ เพื่อให้คุณเรนเดอร์ใหม่ได้

แค่นั้น — flag ของคุณใช้งานจริงแล้ว สลับมันในแดชบอร์ดแล้วเปิดหน้าอีกครั้ง (หรือรอให้ poll ครบรอบ) เพื่อดูมันตามไป

ไม่มีการเรียกใดใน API นี้ที่ throw และไม่มี promise จากมันที่ reject ทุกการอ่าน resolve ผ่านลำดับขั้น ค่าที่ดึงมาใหม่สุด แล้วค่าล่าสุดที่เบราว์เซอร์นี้บันทึกไว้ แล้วค่าเริ่มต้นของคุณ แล้ว false เหตุขัดข้องของ FortressFlag เครือข่ายที่ตาย ตัวบล็อกโฆษณา คีย์ที่ถูกเพิกถอน — ทั้งหมด resolve เป็นค่า flag ไม่มีอันไหนไปถึงโค้ดของคุณในรูปข้อผิดพลาด

(กรณีตัวบล็อกโฆษณานั้นมีจริง ส่วนขยายด้านความเป็นส่วนตัวบางตัวบล็อกคำขอ flag ค่าในแคชยังให้บริการต่อ และเบราว์เซอร์ที่ไม่เคยดึงข้อมูลเลยจะให้บริการค่าเริ่มต้นของคุณ — “flag ไม่อัปเดตเมื่อเปิด uBlock” คือลำดับขั้นกำลังทำงาน ไม่ใช่บั๊ก)

  • ตัวตนของอุปกรณ์อยู่ใน localStorage จำกัดตาม origin ของคุณ มันถูกสร้างแบบสุ่มและเป็นนามแฝง — และ JavaScript ของหน้าคุณเองอ่านได้ เป็นค่าประเภทเดียวกับคีย์ SDK ที่อยู่ข้าง ๆ
  • หน้าต่างส่วนตัวสร้างตัวตนแบบใช้แล้วทิ้ง เซสชันส่วนตัวแต่ละครั้งนับเป็นหนึ่งอุปกรณ์ตราบเท่าที่มันอยู่ ผู้ใช้ที่ล้างข้อมูลไซต์ก็เป็นอุปกรณ์ใหม่เช่นกัน และคนหนึ่งคนบนเว็บไซต์ แอป iOS และแอป Android ของคุณคือสูงสุดสามอุปกรณ์ — ไม่มีการเชื่อมโยงข้ามแพลตฟอร์ม โดยการออกแบบ
  • ชุดทดสอบของคุณฟรี เบราว์เซอร์ที่ขับเคลื่อนโดย Playwright, Selenium, Puppeteer หรือ Cypress ประกาศตัวเอง และ SDK สร้างตัวตน sim_ ตรงนั้น ได้รับ flag ไม่เคยถูกคิดเงิน
  • แท็กเวอร์ชันไม่มีบนเว็บ SDK ส่ง platform และ sdkVersion ให้อัตโนมัติ แต่ไม่มี appVersion หรือ osVersion ที่เชื่อถือได้สำหรับหน้าเว็บ — กฎการเจาะกลุ่มบนแท็กเหล่านั้นจะไม่ตรงกับเบราว์เซอร์เลย