add another error handler for non-indirect case
This commit is contained in:
parent
4c12a9d882
commit
d0245b59bc
2 changed files with 4 additions and 7 deletions
|
@ -357,6 +357,7 @@ export class OAuth2ProviderService {
|
|||
mode: 'indirect',
|
||||
modes: getQueryMode(this.config.url),
|
||||
}));
|
||||
fastify.use('/oauth/authorize', this.#server.errorHandler());
|
||||
|
||||
fastify.use('/oauth/decision', bodyParser.urlencoded({ extended: false }));
|
||||
fastify.use('/oauth/decision', this.#server.decision((req, done) => {
|
||||
|
@ -373,3 +374,5 @@ export class OAuth2ProviderService {
|
|||
fastify.use('/oauth/token', this.#server.errorHandler());
|
||||
}
|
||||
}
|
||||
|
||||
// TODO: remove console.log and use proper logger
|
||||
|
|
|
@ -125,14 +125,8 @@ async function assertDirectError(response: Response, status: number, error: stri
|
|||
assert.strictEqual(response.status, status);
|
||||
|
||||
const data = await response.json();
|
||||
// `mode: indirect` may throw a direct error with `code` while the default direct mode uses `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', () => {
|
||||
let app: INestApplicationContext;
|
||||
|
|
Loading…
Reference in a new issue