feat: new options for express handler (#43761)

This commit is contained in:
Tomasz Pluskiewicz 2020-04-11 05:24:08 +02:00 committed by GitHub
parent 64968e5677
commit 6ec9e84831
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 19 additions and 2 deletions

View File

@ -1,4 +1,4 @@
// Type definitions for @rdfjs/express-handler 1.0
// Type definitions for @rdfjs/express-handler 1.1
// Project: https://github.com/rdfjs-base/express-handler
// Definitions by: tpluscode <https://github.com/tpluscode>
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
@ -19,10 +19,15 @@ declare module 'express' {
}
}
interface BaseIriFromRequest {
(req: Request): Promise<string> | string;
}
interface RdfHandlerOptions {
factory?: DatasetCoreFactory;
formats?: typeof formats;
defaultMediaType?: string;
baseIriFromRequest?: boolean | BaseIriFromRequest;
}
interface RdfHandler {

View File

@ -16,7 +16,19 @@ app.use(rdfHandler());
app.use(rdfHandler({
factory,
formats,
defaultMediaType: 'text/turtle'
defaultMediaType: 'text/turtle',
}));
app.use(rdfHandler({
baseIriFromRequest: true,
}));
app.use(rdfHandler({
baseIriFromRequest: (req: express.Request) => req.path,
}));
app.use(rdfHandler({
baseIriFromRequest: (req: express.Request) => Promise.resolve(req.path),
}));
async function streams(req: express.Request, res: express.Response) {