A helyi Graph-laboratórium beállítása
Ez az útmutató elindítja a különálló Graph-kísérleti műszerfalat a http://localhost:5090 címen. Megbízható fejlesztői gépet és kijelölt postafiókot használj. A műszerfal hitelesítése ki van kapcsolva.
Előfeltételek
Készítsd elő a Node.js-t, a pnpmet, az OpenSSL-t és a Graph-alkalmazáshitelesítő adatokat és hozzájárulást. A tesztfolyamat Bunt is használ. A webhookokhoz nyilvános HTTPS-callback kell, mert a Microsoft nem éri el a privát localhost-címet.
A laboratóriumnak saját konfigurációja és callback-útvonalai vannak. A MailGen éles beállításai nem konfigurálják automatikusan.
A környezet beállítása
A src/env.js határozza meg a kötelező szerződést. A .env.example nem teljes lista. Add meg ezeket az értékeket a laboratórium helyi konfigurációján keresztül:
| Változó | Formátum és cél | Kötelező / alapértelmezés |
|---|---|---|
DATABASE_URL | SQLite-URL, például file:./db.sqlite | Kötelező |
NODE_ENV | development, test, production | Alapértelmezés: development |
TENANT_ID | Entra-bérlőazonosító | Kötelező, nem üres |
CLIENT_ID | Alkalmazás-kliensazonosító | Kötelező, nem üres |
CLIENT_SECRET | Csak alkalmazásszintű hitelesítő adat | Kötelező, bizalmas |
GRAPH_WEBHOOK_CLIENT_STATE | Stabil, véletlen ellenőrzési titok | Kötelező |
GRAPH_WEBHOOK_URL | Nyilvános HTTPS-callback, például https://<your-public-host>/graphWebhook | Kötelező URL |
GRAPH_WEBHOOK_ENCRYPTION_CERTIFICATE_PATH | Nyilvános tanúsítványfájl vagy támogatott mappa | Kötelező |
GRAPH_WEBHOOK_ENCRYPTION_PRIVATE_KEY_PATH | Hozzá tartozó privát kulcsfájl vagy támogatott mappa | Kötelező, bizalmas |
GRAPH_WEBHOOK_ENCRYPTION_CERTIFICATE_ID | Tanúsítványazonosító vagy támogatott fájl-/mappahivatkozás | Kötelező, környezeti ellenőrzésben 1–128 karakter |
DELTA_LINK_ENCRYPTION_KEY | 32 véletlen bájt stabil Base64-kódolása | Kötelező a mentett folytatási hivatkozásokhoz |
A tanúsítványsegédek a beállított fájlokat és mappákat oldják fel. Tartsd meg a delta-kulcsot az adatbázissal együtt. Cseréje olvashatatlanná teheti a mentett hivatkozásokat. Új kulcsot csak új, előkészített konfigurációhoz generálj:
openssl rand -base64 32
Telepítés és indítás
A motherrepo gyökeréből:
cd Architecture/GraphSyncExperimenter/graph-call-dashboard
pnpm install
pnpm cert:generate
pnpm db:push
pnpm dev
A db:push módosítja a beállított SQLite-sémát. Ellenőrizd, hogy eldobható laboratóriumi adatbázist céloz-e, mielőtt futtatod. Indítás után nyisd meg a http://localhost:5090 címet.
A tanúsítvány-generálás önaláírt tanúsítványt, privát kulcsot és tanúsítványazonosítót hoz létre. A konfigurációból oldja fel az útvonalakat. A meglévő, teljes készletet megtartja, hacsak nem adod meg explicit a --force kapcsolót. Aktív előfizetések által használt kulcsokat ne cserélj le úgy, hogy nem tervezed meg a megfelelő előfizetés-frissítést.
Szkriptreferencia
| Parancs | Művelet |
|---|---|
pnpm dev | Next.js-fejlesztői szerver a --turbo --port 5090 kapcsolókkal |
pnpm cert:generate | Tanúsítvány, kulcs és azonosító generálása |
pnpm db:push | Prisma-séma alkalmazása a beállított adatbázisra |
pnpm db:migrate | Migrációk deployolása |
pnpm db:studio | Adatbázis-vizsgáló felület megnyitása |
pnpm test | A tárolóhoz tartozó, adatbázis-előkészítést igénylő tesztfolyamat futtatása |
pnpm check | ESLint- és TypeScript-ellenőrzések |
Az eredmény ellenőrzése
- Nyisd meg a Diagnostics (diagnosztika) részt, és nézd meg a Graph-konfigurációt és a tanúsítvány állapotát.
- Listázd a felhasználókat és a mappákat a kijelölt postafiókhoz.
- Nyisd meg a delta-explorert, és hajts végre egy olvasást, vagy hozz létre előfizetést a beállított callbackhez.
- Vizsgáld meg a mentett választ vagy a webhook-érkezést.
A hiányzó konfiguráció a normál indítás előtt elbukik az ellenőrzésen. Az érvénytelen tanúsítványútvonal megakadályozza a gazdag tartalom visszafejtését. Egy hibás nyilvános callback megakadályozhatja az előfizetés-érvényesítést vagy a későbbi érkezéseket. Az érvénytelen adatbázis-URL megakadályozza az adatbázis-elérést. Ezekben az esetekben használd a hibaelhárítást.