ClientRegistry
Class: ClientRegistry
Defined in: packages/oauth/src/clients.ts:176
Resolve clients: static configuration, then Client ID Metadata Documents
Constructors
Constructor
new ClientRegistry(
params,fetcher?,resolver?):ClientRegistry
Defined in: packages/oauth/src/clients.ts:187
Parameters
params
server parameters
fetcher?
{(input, init?): Promise<Response>; (input, init?): Promise<Response>; }
fetch implementation
resolver?
(host) => Promise<string[]>
DNS resolver
Returns
ClientRegistry
Properties
cache
protectedcache:Map<string, {client?:OAuthClient;until:number; }>
Defined in: packages/oauth/src/clients.ts:178
Metadata documents by client_id, in least recently used order
fetcher
protectedfetcher: {(input,init?):Promise<Response>; (input,init?):Promise<Response>; } =fetch
Defined in: packages/oauth/src/clients.ts:189
fetch implementation
Call Signature
(
input,init?):Promise<Response>
Parameters
input
RequestInfo | URL
init?
RequestInit
Returns
Promise<Response>
Call Signature
(
input,init?):Promise<Response>
Parameters
input
string | Request | URL
init?
RequestInit
Returns
Promise<Response>
inflight
protectedinflight:Map<string,Promise<OAuthClient|undefined>>
Defined in: packages/oauth/src/clients.ts:180
Metadata document fetches in progress
params
protectedparams:OAuthServerParameters
Defined in: packages/oauth/src/clients.ts:188
server parameters
resolver
protectedresolver: (host) =>Promise<string[]>
Defined in: packages/oauth/src/clients.ts:190
DNS resolver
Parameters
host
string
Returns
Promise<string[]>
Methods
fetchDocument()
protectedfetchDocument(url):Promise<OAuthClient|undefined>
Defined in: packages/oauth/src/clients.ts:277
Parameters
url
string
metadata document URL
Returns
Promise<OAuthClient | undefined>
the client
get()
get(
clientId):Promise<OAuthClient|undefined>
Defined in: packages/oauth/src/clients.ts:198
Parameters
clientId
string
client_id
Returns
Promise<OAuthClient | undefined>
the client, undefined when unknown or invalid
getRegistered()
protectedgetRegistered(clientId):Promise<OAuthClient|undefined>
Defined in: packages/oauth/src/clients.ts:233
Parameters
clientId
string
dcr_ client_id
Returns
Promise<OAuthClient | undefined>
the registered client, undefined when unknown or expired
load()
protectedload(clientId):Promise<OAuthClient|undefined>
Defined in: packages/oauth/src/clients.ts:256
Fetch a metadata document and cache the result
Parameters
clientId
string
metadata document URL
Returns
Promise<OAuthClient | undefined>
the client
matchRedirect()
matchRedirect(
client,uri):boolean
Defined in: packages/oauth/src/clients.ts:357
Parameters
client
client
uri
string
requested redirect_uri
Returns
boolean
true when allowed: exact match, or loopback http with any port and identical path
readLimited()
protectedreadLimited(res):Promise<string|undefined>
Defined in: packages/oauth/src/clients.ts:334
Read the body, giving up as soon as it exceeds the maximum document size
Parameters
res
Response
response
Returns
Promise<string | undefined>
the body, undefined when too large