Aktualnie uczę się korzystać z nowych funkcji chmurowych w Firebase, a problem, który mam, polega na tym, że nie mogę uzyskać dostępu do funkcji, którą napisałem za pomocą żądania AJAX. Otrzymuję błąd "Nie" Access-Control-Allow-Origin ". Oto przykład funkcji I napisał:Włączanie CORS w funkcjach chmurowych dla Firebase
exports.test = functions.https.onRequest((request, response) => {
response.status(500).send({test: 'Testing functions'});
})
Funkcja siedzi w tym URL: https://us-central1-fba-shipper-140ae.cloudfunctions.net/test
Firebase docs sugeruje, aby dodać CORS middleware wewnątrz funkcji, próbowałem, ale to nie działa na mi: https://firebase.google.com/docs/functions/http-events
to jak to zrobiłem:
var cors = require('cors');
exports.test = functions.https.onRequest((request, response) => {
cors(request, response,() => {
response.status(500).send({test: 'Testing functions'});
})
})
Co robię źle? Byłbym wdzięczny za każdą pomoc.
UPDATE:
Doug Stevenson „s odpowiedź pomogła. Dodanie ({origin: true}) rozwiązało problem, musiałem również zmienić response.status(500)
na response.status(200)
, którego na początku zupełnie mi brakowało.
także próbkę w docs [tutaj] (https://firebase.google.com/docs/ hosting/url-redirects-przepisuje # nagłówki sekcji) – Kato