fix(backend): request.body may be undefined (#9356)
This commit is contained in:
		 Kagami Sascha Rosylight
					Kagami Sascha Rosylight
				
			
				
					committed by
					
						 GitHub
						GitHub
					
				
			
			
				
	
			
			
			 GitHub
						GitHub
					
				
			
						parent
						
							72e7909911
						
					
				
				
					commit
					c3cb218975
				
			| @@ -54,21 +54,21 @@ export class ApiCallService implements OnApplicationShutdown { | ||||
| 	@bindThis | ||||
| 	public handleRequest( | ||||
| 		endpoint: IEndpoint & { exec: any }, | ||||
| 		request: FastifyRequest<{ Body: Record<string, unknown>, Querystring: Record<string, unknown> }>, | ||||
| 		request: FastifyRequest<{ Body: Record<string, unknown> | undefined, Querystring: Record<string, unknown> }>, | ||||
| 		reply: FastifyReply, | ||||
| 	) { | ||||
| 		const body = request.method === 'GET' | ||||
| 			? request.query | ||||
| 			: request.body; | ||||
|  | ||||
| 		const token = body['i']; | ||||
| 		const token = body?.['i']; | ||||
| 		if (token != null && typeof token !== 'string') { | ||||
| 			reply.code(400); | ||||
| 			return; | ||||
| 		} | ||||
| 		this.authenticateService.authenticate(token).then(([user, app]) => { | ||||
| 			this.call(endpoint, user, app, body, null, request).then((res) => { | ||||
| 				if (request.method === 'GET' && endpoint.meta.cacheSec && !body['i'] && !user) { | ||||
| 				if (request.method === 'GET' && endpoint.meta.cacheSec && !body?.['i'] && !user) { | ||||
| 					reply.header('Cache-Control', `public, max-age=${endpoint.meta.cacheSec}`); | ||||
| 				} | ||||
| 				this.send(reply, res); | ||||
| @@ -111,7 +111,7 @@ export class ApiCallService implements OnApplicationShutdown { | ||||
| 		for (const [k, v] of Object.entries(multipartData.fields)) { | ||||
| 			fields[k] = v.value; | ||||
| 		} | ||||
| 	 | ||||
|  | ||||
| 		const token = fields['i']; | ||||
| 		if (token != null && typeof token !== 'string') { | ||||
| 			reply.code(400); | ||||
| @@ -199,7 +199,7 @@ export class ApiCallService implements OnApplicationShutdown { | ||||
| 			name: string; | ||||
| 			path: string; | ||||
| 		} | null, | ||||
| 		request: FastifyRequest<{ Body: Record<string, unknown>, Querystring: Record<string, unknown> }>, | ||||
| 		request: FastifyRequest<{ Body: Record<string, unknown> | undefined, Querystring: Record<string, unknown> }>, | ||||
| 	) { | ||||
| 		const isSecure = user != null && token == null; | ||||
| 		const isModerator = user != null && (user.isModerator || user.isAdmin); | ||||
|   | ||||
		Reference in New Issue
	
	Block a user