diff --git a/docsfera.json b/docsfera.json index fcafe66..7f133fe 100644 --- a/docsfera.json +++ b/docsfera.json @@ -5489,6 +5489,14 @@ "schema": { "type": "string" } + }, + { + "name": "origin", + "required": true, + "in": "header", + "schema": { + "type": "string" + } } ], "responses": { diff --git a/src/modules/open-data/open-data.controller.ts b/src/modules/open-data/open-data.controller.ts index 3a6ccff..b8951ed 100644 --- a/src/modules/open-data/open-data.controller.ts +++ b/src/modules/open-data/open-data.controller.ts @@ -1,5 +1,5 @@ import DadosferaLogger from '@dadosfera/dadosfera-logs'; -import { Body, Controller, ForbiddenException, Header, HttpCode, HttpException, Inject, Param, Post, Query, Req, UseFilters, UseGuards, UseInterceptors } from '@nestjs/common'; +import { Body, Controller, ForbiddenException, Header, Headers, HttpCode, HttpException, Inject, Param, Post, Query, Req, Res, UseFilters, UseGuards, UseInterceptors } from '@nestjs/common'; import { ApiCreatedResponse, ApiHeaders, ApiOkResponse, ApiTags } from '@nestjs/swagger'; import { ApiInternalOnlyController } from 'src/decorators/swagger.decorator'; import { GrpcToHttpExceptionFilter } from 'src/error/grpc-to-http-exception.filter'; @@ -40,14 +40,14 @@ export class OpenDataController { language: string, @Req() request: Request, + @Headers('origin') + origin: string ) { - this.logger.info('createUser for open data'); + this.logger.info('createUser for open data' + JSON.stringify(request.headers)); - this.logger.info('user-agent', request.headers); - - const origin = request.headers['origin']; const corslist = ["https://devsbm.dadosfera.io", "https://sharingoceandata.com"]; if (!corslist.includes(origin)) { + this.logger.info('block request by cors list: '+ origin); throw new ForbiddenException(); }