מדריך זה מלווה אתכם בשילוב של TRACIO באפליקציה שלכם. תתקינו את ה-SDK של הלקוח, תאתחלו אותו עם המפתח הציבורי שלכם ותקראו את תוצאת זיהוי המבקר הראשונה שלכם.
התקינו את ה-SDK של TRACIO באמצעות מנהל החבילות המועדף עליכם:
npm install @tracio/sdkאו עם pnpm:
pnpm add @tracio/sdkאו עם yarn:
yarn add @tracio/sdkאם אינכם משתמשים ב-bundler, שבצו את תגית ה-script של ה-edge בעמוד שלכם. היא מאתחלת את עצמה אוטומטית עם המפתח הציבורי בפרמטר ה-query בשם k:
<script src="https://edge.tracio.ai/s.js?k=PUBLIC_KEY" async></script>ייבאו את Tracio וקראו ל-Tracio.init() עם המפתח הציבורי שלכם. הקריאה מחזירה מיד TracioInstance — ה-agent הבסיסי נטען ברקע.
import { Tracio } from "@tracio/sdk"
const tracio = Tracio.init({ publicKey: "5ca175fc...",})בטוח לשלוח את המפתח הציבורי שלכם בקוד צד-הלקוח. תוכלו למצוא אותו בלוח הבקרה שלכם תחת API Keys.
Tracio.init() מקבל אובייקט TracioConfig:
| אפשרות | טיפוס | ברירת מחדל | תיאור |
|---|---|---|---|
publicKey | string | חובה | המפתח הציבורי שלכם. העתיקו אותו מלוח הבקרה שלכם. |
region | "us" | "eu" | ללא | אזור נתונים אופציונלי. כשלא מוגדר, ה-SDK משתמש בנקודת הקצה הגנרית https://edge.tracio.ai (ללא מגורי נתונים מרומזים בארה"ב). הגדירו במפורש כדי לקבע us או eu. |
endpoint | string | אוטומטי | נקודת קצה מותאמת של ה-API (עבור נקודת קצה בפרוקסי צד-ראשון). |
scriptUrl | string | אוטומטי | כתובת URL מותאמת עבור סקריפט ה-agent (עבור נקודת קצה בפרוקסי צד-ראשון). |
linkedId | string | ללא | מזהה המקשר מבקר זה לישות במערכת שלכם. |
tag | string | ללא | תווית חופשית המצורפת לבקשה לצורך סינון מאוחר יותר. |
debug | boolean | false | רושם דיאגנוסטיקה מפורטת לקונסול. |
timeoutMs | number | 15000 | כמה זמן להמתין לתוצאה לפני פקיעת זמן. |
קראו ל-tracio.getVisitorId() כדי לקבל מזהה מבקר יציב. זוהי פעולה אסינכרונית.
const visitorId = await tracio.getVisitorId()
console.log(visitorId) // "X7fh2Hg9LkMn3pQr"קראו ל-tracio.getResult() כדי לקבל את תוצאת הזיהוי המלאה, כולל זיהוי בוטים.
const result = await tracio.getResult()
console.log(result.visitorId) // "X7fh2Hg9LkMn3pQr"
if (result.bot.detected) { console.warn("bot, confidence:", result.bot.confidence)}לתוצאה יש המבנה הבא:
{ visitorId: "X7fh2Hg9LkMn3pQr", bot: { detected: false, confidence: 2, // 0-100 reasons: [], },}השתמשו בקריאות החוזרות של מחזור החיים כדי להגיב כאשר ה-agent מוכן או כאשר משהו נכשל, וב-destroy() כדי לפרק את המופע:
const tracio = Tracio.init({ publicKey: "5ca175fc..." })
tracio.onReady((result) => { console.log("ready:", result.visitorId)})
tracio.onError((error) => { console.error("tracio error:", error.code, error.message)})
// later, when you no longer need ittracio.destroy()ראו טיפול בשגיאות לרשימה המלאה של קודי השגיאה ועוזרי ניסיון חוזר.
import { Tracio } from "@tracio/sdk"
const tracio = Tracio.init({ publicKey: "5ca175fc..." })
async function handleLogin(email: string, password: string) { const visitorId = await tracio.getVisitorId()
const response = await fetch("/api/login", { method: "POST", body: JSON.stringify({ email, password, visitorId }), })
return response.json()}import { Tracio } from "@tracio/sdk"
const tracio = Tracio.init({ publicKey: "5ca175fc...", tag: "payment",})
async function processPayment(paymentData: PaymentData) { const result = await tracio.getResult()
if (result.bot.detected) { throw new Error("Automated client detected") }
const response = await fetch("/api/payment", { method: "POST", body: JSON.stringify({ ...paymentData, visitorId: result.visitorId }), })
return response.json()}