Serverless Framework con AWS cognito genera un error CORS
Recibo este mensaje de error de la interfaz Angular y no estoy autorizado a tocar mi código lambda:
`Access to fetch at 'https://testapicd.***.***.com/localization/v1/role' from origin 'https://localization.test.***.***.com' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource. If an opaque response serves your needs, set the request's mode to 'no-cors' to fetch the resource with CORS disabled.`
He buscado en todas partes y parece que no hay errores en mi código. Mi código sin servidor es
getrole:
handler: v1/handler_get_role.get_role
name: get_role
events:
- http:
path: v1/role
method: get
cors: true
authorizer:
name: CognitoCSAuthorizer
type: COGNITO_USER_POOLS
arn: ${file(config.${self:provider.stage}.json):userpoolarn}
He verificado tres veces todas las configuraciones y todo parece correcto. ¿Algún consejo que hacer? La funcionalidad funciona en el entorno de desarrollo, pero no cuando la implemento en el entorno de prueba.
Si pruebo el token directamente contra la API, entonces tampoco funciona (pero funcionó bien en dev). Ya ni siquiera creo que sea un problema CORS. Creo que el token jwt está mal.
def get_role(event, context):
return {
'statusCode': 200,
'headers': {
'Content-Type': 'application/json',
'Access-Control-Allow-Origin' : '*', # Required for CORS support to work
'Access-Control-Allow-Credentials': 'true',
},
'body': json.dumps("TEST")
}