Skip to content

Commit 43fa5bc

Browse files
committed
fix(common): add raw body app option as a non-breaking change
1 parent 8ea6337 commit 43fa5bc

5 files changed

Lines changed: 9 additions & 17 deletions

File tree

packages/common/interfaces/http/http-server.interface.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -67,8 +67,7 @@ export interface HttpServer<TRequest = any, TResponse = any> {
6767
getRequestMethod?(request: TRequest): string;
6868
getRequestUrl?(request: TRequest): string;
6969
getInstance(): any;
70-
registerParserMiddleware(): any;
71-
registerParserMiddleware(options?: NestApplicationOptions): any;
70+
registerParserMiddleware(...args: any[]): any;
7271
enableCors(options: CorsOptions | CorsOptionsDelegate<TRequest>): any;
7372
getHttpServer(): any;
7473
initHttpServer(options: NestApplicationOptions): void;

packages/core/adapters/http-adapter.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -110,8 +110,7 @@ export abstract class AbstractHttpAdapter<
110110
abstract setErrorHandler(handler: Function, prefix?: string);
111111
abstract setNotFoundHandler(handler: Function, prefix?: string);
112112
abstract setHeader(response, name: string, value: string);
113-
abstract registerParserMiddleware(prefix?: string);
114-
abstract registerParserMiddleware(options?: NestApplicationOptions);
113+
abstract registerParserMiddleware(prefix?: string, rawBody?: boolean);
115114
abstract enableCors(
116115
options: CorsOptions | CorsOptionsDelegate<TRequest>,
117116
prefix?: string,

packages/core/nest-application.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -178,7 +178,9 @@ export class NestApplication
178178
}
179179

180180
public registerParserMiddleware() {
181-
this.httpAdapter.registerParserMiddleware(this.appOptions);
181+
const prefix = this.config.getGlobalPrefix();
182+
const rawBody = !!this.appOptions?.rawBody;
183+
this.httpAdapter.registerParserMiddleware(prefix, rawBody);
182184
}
183185

184186
public async registerRouter() {

packages/platform-express/adapters/express-adapter.ts

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -182,13 +182,9 @@ export class ExpressAdapter extends AbstractHttpAdapter {
182182
this.httpServer = http.createServer(this.getInstance());
183183
}
184184

185-
public registerParserMiddleware(prefix?: string);
186-
public registerParserMiddleware(options?: NestApplicationOptions);
187-
public registerParserMiddleware(
188-
prefixOrOptions?: string | NestApplicationOptions,
189-
) {
185+
public registerParserMiddleware(prefix?: string, rawBody?: boolean) {
190186
let bodyParserJsonOptions: OptionsJson;
191-
if (isObject(prefixOrOptions) && prefixOrOptions.rawBody) {
187+
if (rawBody === true) {
192188
bodyParserJsonOptions = {
193189
verify: (req, _res, buffer) => {
194190
if (Buffer.isBuffer(buffer)) {

packages/platform-fastify/adapters/fastify-adapter.ts

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -439,17 +439,13 @@ export class FastifyAdapter<
439439
this.register(import('fastify-cors'), options);
440440
}
441441

442-
public registerParserMiddleware(prefix?: string);
443-
public registerParserMiddleware(options?: NestApplicationOptions);
444-
public registerParserMiddleware(
445-
prefixOrOptions?: string | NestApplicationOptions,
446-
) {
442+
public registerParserMiddleware(prefix?: string, rawBody?: boolean) {
447443
if (this._isParserRegistered) {
448444
return;
449445
}
450446
this.register(import('fastify-formbody'));
451447

452-
if (isObject(prefixOrOptions) && prefixOrOptions.rawBody) {
448+
if (rawBody === true) {
453449
this.getInstance().addContentTypeParser<string>(
454450
'application/json',
455451
{ parseAs: 'string' },

0 commit comments

Comments
 (0)