add another error handler for non-indirect case
This commit is contained in:
parent
4c12a9d882
commit
d0245b59bc
|
@ -357,6 +357,7 @@ export class OAuth2ProviderService {
|
||||||
mode: 'indirect',
|
mode: 'indirect',
|
||||||
modes: getQueryMode(this.config.url),
|
modes: getQueryMode(this.config.url),
|
||||||
}));
|
}));
|
||||||
|
fastify.use('/oauth/authorize', this.#server.errorHandler());
|
||||||
|
|
||||||
fastify.use('/oauth/decision', bodyParser.urlencoded({ extended: false }));
|
fastify.use('/oauth/decision', bodyParser.urlencoded({ extended: false }));
|
||||||
fastify.use('/oauth/decision', this.#server.decision((req, done) => {
|
fastify.use('/oauth/decision', this.#server.decision((req, done) => {
|
||||||
|
@ -373,3 +374,5 @@ export class OAuth2ProviderService {
|
||||||
fastify.use('/oauth/token', this.#server.errorHandler());
|
fastify.use('/oauth/token', this.#server.errorHandler());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// TODO: remove console.log and use proper logger
|
||||||
|
|
|
@ -125,13 +125,7 @@ async function assertDirectError(response: Response, status: number, error: stri
|
||||||
assert.strictEqual(response.status, status);
|
assert.strictEqual(response.status, status);
|
||||||
|
|
||||||
const data = await response.json();
|
const data = await response.json();
|
||||||
// `mode: indirect` may throw a direct error with `code` while the default direct mode uses `error`
|
assert.strictEqual(data.error, error);
|
||||||
// For now this doesn't matter too much since direct errors are not intended to be sent to clients.
|
|
||||||
if ('code' in data) {
|
|
||||||
assert.strictEqual(data.code, error);
|
|
||||||
} else {
|
|
||||||
assert.strictEqual(data.error, error);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
describe('OAuth', () => {
|
describe('OAuth', () => {
|
||||||
|
|
Loading…
Reference in a new issue