דלג לתוכן הראשי
אתה צופה בתיעוד למפתחים
תיעוד זה מיועד למפתחים העובדים עם פלטפורמת המפתחים של Base44. למידע על connectors בעורך האפליקציות, ראה שימוש ב-Connectors.
App user connectors מאפשרים לכל משתמש מחובר של האפליקציה לחבר את חשבון הצד השלישי שלו. כל משתמש אפליקציה מקבל OAuth token משלו. השתמש בזה כאשר פעולות צריכות לקרות כמשתמש האפליקציה האינדיבידואלי, כמו שליחת אימייל מחשבון Gmail שלו, פרסום ל-LinkedIn האישי שלו, או קריאת אירועי Google Calendar שלו. בניגוד ל-shared connectors, שבהם חשבון אחד משותף בכל משתמשי האפליקציה, app user connectors שומרים OAuth token נפרד לכל משתמש. זרימת ה-OAuth רצה תחת אפליקציית ה-OAuth הרשומה שלך, כך שמשתמשי האפליקציה רואים את שם האפליקציה שלך במסך ההסכמה של הספק.
App user connectors דורשים תוכנית Builder או גבוהה יותר.

הגדרה

לפני שמשתמשי האפליקציה יכולים לחבר את חשבונותיהם, רשום את אישורי אפליקציית ה-OAuth שלך ב-workspace שלך. זה דורש גישת admin של workspace. אתה גם זקוק ל-client ID ו-client secret מהשירות החיצוני. רשום את ה-connector מ-Workspace Settings שלך. ראה Setting up connectors for app users להוראות שלב אחר שלב. לאחר שתרשום את ה-connector, ה-workspace מקצה לו מזהה. השתמש במזהה זה כדי לחבר ולנתק משתמשי אפליקציה בקוד ה-frontend שלך ולאחזר את ה-tokens שלהם בפונקציות הבקאנד שלך.

חיבור וניתוק ב-frontend שלך

השתמש ב-base44.connectors בקוד ה-frontend שלך כדי להתחיל ולסיים את זרימת ה-OAuth עבור כל משתמש אפליקציה. כדי לחבר משתמש אפליקציה, קרא ל-connectAppUser עם מזהה ה-connector. הוא מחזיר URL להפניה. נווט את משתמש האפליקציה ל-URL זה כדי להתחיל את זרימת ה-OAuth.
const redirectUrl = await base44.connectors.connectAppUser("YOUR_CONNECTOR_ID");
window.location.href = redirectUrl;
לאחר שמשתמש האפליקציה משלים את הזרימה, ה-token שלו נשמר ופונקציות הבקאנד שלך יכולות לאחזר אותו.
כדי לנתק משתמש אפליקציה, קרא ל-disconnectAppUser עם מזהה ה-connector. הוא מסיר את ה-token השמור עבור משתמש האפליקציה המחובר כרגע.
await base44.connectors.disconnectAppUser("YOUR_CONNECTOR_ID");

אחזור ה-token בפונקציית בקאנד

השתמש ב-createClientFromRequest() כדי ליצור את לקוח ה-SDK בפונקציית הבקאנד שלך. הוא קורא את זהות משתמש האפליקציה מהבקשה הנכנסת אוטומטית, כך שה-SDK יודע איזה token של משתמש להחזיר. לאחר מכן קרא ל-getCurrentAppUserConnection() עם מזהה ה-connector כדי לאחזר את ה-token עבור משתמש האפליקציה שמבצע את הבקשה הנוכחית.
import { createClientFromRequest } from "@base44/sdk";

export default async function handler(req: Request) {
  const base44 = createClientFromRequest(req);

  const { accessToken } =
    await base44.asServiceRole.connectors.getCurrentAppUserConnection(
      "YOUR_CONNECTOR_ID",
    );

  const response = await fetch(
    "https://www.googleapis.com/calendar/v3/calendars/primary/events",
    {
      headers: { Authorization: `Bearer ${accessToken}` },
    },
  );

  const events = await response.json();
  return Response.json(events);
}

ראה גם

דף זה תורגם באמצעות בינה מלאכותית. למידע המדויק והעדכני ביותר, עיין בגרסה האנגלית.