XMLHttpRequest: setPrivateToken() Methode
Hinweis: Diese Funktion ist in Web Workers verfügbar, mit Ausnahme von Service Workers.
Die XMLHttpRequest-Methode setPrivateToken() fügt einem XMLHttpRequest-Aufruf Informationen zum Private State Token hinzu, um private State-Token-Operationen zu initiieren.
Syntax
setPrivateToken(privateToken)
Parameter
privateToken-
Ein Objekt, das Optionen für die Initiierung einer privaten State-Token-Operation enthält. Mögliche Eigenschaften umfassen:
issuersOptional-
Ein Array von Strings, das die URLs von Ausstellern enthält, für die Sie Einlösungsdatensätze weiterleiten möchten. Diese Einstellung wird ignoriert, es sei denn,
operationist aufsend-redemption-recordgesetzt, in welchem Fall dasissuers-Array enthalten sein muss. operation-
Ein String, der die Art der Token-Operation darstellt, die Sie initiieren möchten. Mögliche Werte sind:
token-request-
Initiiert eine Token-Anforderung-Operation.
token-redemption-
Initiiert eine Token-Einlösung-Operation.
send-redemption-record-
Initiiert eine Einlösungsdatensatz senden-Operation.
refreshPolicyOptional-
Ein enumerierter Wert, der das erwartete Verhalten angibt, wenn ein nicht abgelaufener Einlösungsdatensatz für den aktuellen Benutzer und die aktuelle Website bereits festgelegt wurde. Diese Einstellung wird ignoriert, es sei denn,
operationist auftoken-redemptiongesetzt. Mögliche Werte sind: version-
Eine Zahl, die die Version des kryptografischen Protokolls angibt, das Sie verwenden möchten, wenn Sie ein Token generieren. Derzeit ist dies immer auf
1gesetzt, was die einzige Version ist, die die Spezifikation unterstützt. Wenn Sie dieprivateToken-Option angeben, ist diese Eigenschaft obligatorisch.
Rückgabewert
Keiner (undefined).
Ausnahmen
InvalidStateErrorDOMException-
Wird ausgelöst, wenn das zugehörige
XMLHttpRequestsich nicht in einem geöffneten Zustand befindet odersend()bereits darauf aufgerufen wurde. NotAllowedErrorDOMException-
Wird ausgelöst, wenn die Nutzung von Operationen der Private State Token API durch eine
private-state-token-issuanceoderprivate-state-token-redemptionBerechtigungsrichtlinie ausdrücklich untersagt ist. TypeError-
Wird ausgelöst, wenn die
operationaufsend-redemption-recordgesetzt ist und dasissuers-Array leer oder nicht gesetzt war, oder einer oder mehrere der angegebenenissuerskeine vertrauenswürdigen HTTPS-URLs sind.
Beispiele
>Ausstellen eines privaten Tokens
const hasToken = await Document.hasPrivateToken(`issuer.example`);
if (!hasToken) {
const request = new XMLHttpRequest();
request.open(
"POST",
"https://issuer.example/.well-known/private-state-token/issuance",
);
request.setPrivateToken({
version: 1,
operation: "token-request",
});
req.send();
}
Einlösen eines privaten Tokens
const request = new XMLHttpRequest();
request.open(
"POST",
"https://issuer.example/.well-known/private-state-token/redemption",
);
request.setPrivateToken({
version: 1,
operation: "token-redemption",
refreshPolicy: "none",
});
req.send();
Weiterleiten eines Einlösungsdatensatzes
const hasRR = await Document.hasRedemptionRecord(`issuer.example`);
if (hasRR) {
const request = new XMLHttpRequest();
request.open("POST", "some-resource.example");
request.setPrivateToken({
version: 1,
operation: "send-redemption-record",
issuers: ["https://issuer.example"],
});
req.send();
}
Spezifikationen
| Specification |
|---|
| Private State Token API> # dom-xmlhttprequest-setprivatetoken> |