У меня есть firebase хостинг в мультирегиональных «европа-запад» и firebase функции в «европа-запад1».Функции onRequest работают нормально, но все мои функции onCall выбрасывают общую ошибку CORS:
No 'Access-Control-Allow-Origin' header is present on the requested resource.
Ничего полезного в журнале.
Пример функции:
export const ADMIN01AddStaffClaim = functions
.region('europe-west1')
.https.onCall((data, context) => {
if (context.auth) {
if (context.auth.token.owner !== true) {
let error = new HttpsError('permission-denied', 'You must be an app owner to add staff claims');
return { error };
} else {
const email = data.email;
return grantClaim(email, 'staff')
.then(() => {
return { result: 'Added ' + 'staff' + ' claim to ' + email };
})
.catch(err => {
console.log(err);
let error = new HttpsError(
'permission-denied',
'You must be an app owner to add staff claims'
);
return { error };
});
}
} else {
let error = new HttpsError('permission-denied', 'You must be an app owner to add staff claims');
return { error };
}
});
Я пытался использовать экспресс-cors, но из того, что я прочитал в документации, он не будет работать с вызываемыми функциями.
РЕДАКТИРОВАТЬ: Парню, который удалил угловой тег и добавил javascript, буквально повсюду в моем коде есть только машинопись, и это проблема, возникающая из-за угловых запросов обычного браузера.
EDIT2: ошибкавыброшен не из-за реальных проблем с CORS, а потому, что моя функция - полное дерьмо.