Anmelden um den Slug und den veröffentlichbaren Schlüssel Ihrer Location in jedem Beispiel zu sehen.
Ihr Konto hat noch keine Location, die Beispiele behalten daher ihre Platzhalter. Abmelden
Angemeldet als · . Legen Sie in der Konsole einen veröffentlichbaren Schlüssel an und laden Sie die Seite neu, um ihn hier zu sehen. Abmelden
Angemeldet als · . Die Beispiele zeigen den veröffentlichbaren Schlüssel Ihrer Location. Abmelden
Entwicklerdokumentation
CDN
Woher das JavaScript-SDK ausgeliefert wird, die zwei Pfadformen und ihre Cache-Lebensdauern, SRI-Hashes und wie Releases Ihre Seite erreichen.
Das JavaScript-SDK wird von https://cdn.bookdineplay.com ausgeliefert. Jedes Release veröffentlicht dieselbe Datei unter zwei Pfaden mit unterschiedlichen Zusagen: eine exakte Version, die sich nie ändert, und ein Alias der Hauptversionslinie, der immer auf das neueste Release dieser Linie zeigt.
Die zwei Pfade
| Pfad | Inhalt | Cache | Integritäts-Hash |
|---|---|---|---|
sdk/<version>/bookdineplay.js |
genau dieses Release, für immer | ein Jahr, unveränderlich (max-age=31536000, immutable) |
daneben veröffentlicht als sdk/<version>/sri.txt |
sdk/v<major>/bookdineplay.js |
das neueste Release dieser Hauptversionslinie | fünf Minuten (max-age=300) |
keiner – der Inhalt ändert sich absichtlich |
Die aktuelle Linie ist 0.x, der Alias also sdk/v0/bookdineplay.js. Erscheint eine 1.0.0, kommt sdk/v1/ hinzu und sdk/v0/ liefert weiter das letzte 0.x-Release – ein Alias springt nie auf eine neue Hauptversion.
Welchen Pfad verwenden
- Den Alias, wenn Sie Korrekturen ohne Änderung an Ihrer Seite wollen. Der Schnellstart und das WordPress-Plugin verwenden ihn. Schlimmster Fall nach einem Release: fünf Minuten Besucher auf der vorherigen Version.
- Eine exakte Version, wenn Ihre Sicherheitsrichtlinie byte-genaues Pinning verlangt oder Sie ein Theme gegen ein Release getestet haben und es dabei bleiben soll. Sie aktualisieren, indem Sie das Tag ändern.
Eine exakte Version festlegen
Kopieren Sie den Hash der Version aus sdk/<version>/sri.txt – er hängt auch am GitHub-Release – und ergänzen Sie ihn als integrity-Attribut:
<script
src="https://cdn.bookdineplay.com/sdk/<version>/bookdineplay.js"
integrity="<hash from sdk/<version>/sri.txt>"
crossorigin="anonymous"></script>Der Hash ist sha384-…, berechnet über genau die hochgeladenen Bytes, sodass er nie von dem abweichen kann, was das CDN ausliefert. crossorigin="anonymous" ist nötig, damit der Browser ihn prüft. Setzen Sie nie ein integrity-Attribut auf die Alias-URL: Das erste Release nach Ihrem ändert die Bytes, die Prüfung schlägt fehl und das Widget lädt stillschweigend nicht mehr.
Versionen und Releases
Jedes Release von BookDinePlay taggt vX.Y.Z auf GitHub und veröffentlicht das SDK auf dem CDN, BookDinePlay.Sdk und BookDinePlay.Shared auf NuGet und das WordPress-Plugin-Zip am Release. Ein Prerelease wie 0.7.0-beta.1 erscheint nur unter seinem exakten Versionspfad – es bewegt nie einen Alias. window.BookDinePlay.version ist die Versionszeichenkette des SDK.
Cross-Origin- und Cache-Details
- Antworten unter
/sdk/tragenAccess-Control-Allow-Origin: *, sodass gepinnte Ladevorgänge mitcrossoriginvon jeder Website funktionieren. - Das CDN liegt hinter Azure Front Door; die Cache-Lebensdauern oben sind das, woran sich Ihr Browser und Zwischen-Caches halten. Ein Deploy des Alias ist innerhalb dieser fünf Minuten überall sichtbar.
- Nichts auf dem CDN ist personalisiert oder an einen Schlüssel gebunden: Es liefert pro Pfad eine statische Datei, und Ihr veröffentlichbarer Schlüssel geht nur je an
api.bookdineplay.com.
Nächste Schritte
- Schnellstart – der Alias in einer funktionierenden Seite.
- Authentifizierung – der Schlüssel, den das geladene Widget brauchen wird.