Облачные функции Firebase Проблема с CORS - PullRequest
0 голосов
/ 02 ноября 2018

У меня установлен CORS для облачных функций Firebase.

Я использую sendgrid для отправки транзакционного электронного письма.

Я использовал этот EXACT-код в другой папке, и эта функция не возвращала никаких проблем - но я объединил 2 отдельных документа функций в один, и теперь я получаю сообщение об ошибке ...

Доступ к XMLHttpRequest в «триггере облачной функции» из источника «мой веб-сайт» был заблокирован политикой CORS: на запрошенном ресурсе отсутствует заголовок «Access-Control-Allow-Origin».

Действительно смущен тем, что это может быть ...

const cors = require('cors')({ origin: true });

exports.sendRequest = functions.https.onRequest((req, res) => {
  cors(req, res, () => {
   return Promise.resolve()
   .then(() => {
    if (req.method !== 'POST') {
      const error = new Error('Only POST requests are accepted');
      error.code = 405;
      throw error;
    }

    const msg = {
      to: req.body.companyEmail,
      from: req.body.name,
      text: 'and easy to do anywhere, even with Node.js',
      html: '<strong>and easy to do anywhere, even with Node.js</strong>'
        }        
    };

    return sgMail.send(msg);

  })
  .then((response) => {
    if (response.body) {
      res.send(response.body);
    } else {
      res.end();
    }
  })

  .catch((err) => {
    console.error(err);
    return Promise.reject(err);
  });
})
})
...