Experimental: This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
The hasPrivateToken() method of the Document interface returns a promise that fulfills with a boolean indicating whether the browser has a private state token stored from a particular issuer server.
hasPrivateToken(issuer)issuerA string representing the URL of an issuer server.
A Promise that resolves with a boolean value indicating whether the browser has a private state token stored from the specified issuer server.
InvalidStateError DOMExceptionThrown if the current Document is not yet active.
NotAllowedError DOMExceptionThrown if:
Document is not loaded in a secure context.TypeError DOMExceptionThrown if issuer is not a valid URL.
const hasToken = await Document.hasPrivateToken(`issuer.example`);
if (!hasToken) {
await fetch(
"https://issuer.example/.well-known/private-state-token/issuance",
{
method: "POST",
privateToken: {
version: 1,
operation: "token-request",
},
},
);
}