Attualmente sto imparando come utilizzare le nuove funzioni cloud per Firebase e il problema che sto riscontrando è che non riesco ad accedere alla funzione che ho scritto tramite una richiesta AJAX. Ottengo l'errore "No 'Access-Control-Allow-Origin'". Ecco un esempio della funzione che ho scritto:
exports.test = functions.https.onRequest((request, response) => {
response.status(500).send({test: 'Testing functions'});
})
La funzione si trova in questo URL: https://us-central1-fba-shipper-140ae.cloudfunctions.net/test
I documenti di Firebase suggeriscono di aggiungere il middleware CORS all'interno della funzione, l'ho provato ma non funziona per me: https://firebase.google.com/docs/functions/http-events
Ecco come l'ho fatto:
var cors = require('cors');
exports.test = functions.https.onRequest((request, response) => {
cors(request, response, () => {
response.status(500).send({test: 'Testing functions'});
})
})
Che cosa sto facendo di sbagliato? Gradirei qualsiasi aiuto con questo.
AGGIORNARE:
La risposta di Doug Stevenson ha aiutato. Aggiungendo ({origin: true}) il problema è stato risolto, dovevo anche passare response.status(500)
a quello response.status(200)
che all'inizio mi mancava completamente.