Estoy probando una función en la nube con el emulador de Firebase. Tengo un problema con la política de CORS. Traté también de poner:
const cors = require('cors')({ origin: true }); ..... cors(data, context, async () => {...}Esta es la función de nube completa:
export const createCheckoutSessionGreen = functions.https.onCall( (data: any, context: any) => { cors(data, context, async () => { const session = await stripe.checkout.sessions.create({ payment_method_types: ['card'], mode: 'payment', success_url: window.location.origin, cancel_url: window.location.origin, line_items: [ { price_data: { currency: 'eur', product_data: { name: data, }, unit_amount: 1.99 * 100, }, quantity: 1, }, ], }); return session.id; }); } );Pero siempre me sale el mismo error:
El acceso para buscar en 'http://localhost:5001/..../us-central1/createCheckoutSessionGreen' desde el origen 'http://localhost:8100' ha sido bloqueado por la política de CORS: la respuesta a la solicitud de verificación previa no pasa comprobación de control de acceso: no hay ningún encabezado 'Access-Control-Allow-Origin' en el recurso solicitado. Si una respuesta opaca satisface sus necesidades, establezca el modo de la solicitud en 'no-cors' para obtener el recurso con CORS deshabilitado.