【问题标题】:Whitelist Domains in Firebase FunctionFirebase 功能中的白名单域
【发布时间】:2021-11-04 05:18:35
【问题描述】:

仅应允许列入白名单的域使用 API 服务。

下面是我的代码

const domainsList =  require('./domains');

const corsOptions = {
    origin: function (origin, callback) {
      if (domainsList.indexOf(origin) !== -1) {
        callback(null, true)
      } else {
        callback(new Error('Not allowed by CORS'))
      }
    }
  };

exports.sendEmail = functions.https.onRequest((req, res) => {
    cors( corsOptions ,req, res, () => { 
         console.log("Domain Whitelisted")
    });
});

我收到此错误TypeError: Cannot read property 'origin' of undefined

我在这里做错了什么?请指导我

【问题讨论】:

  • 请澄清您的具体问题或提供其他详细信息以准确突出您的需求。正如目前所写的那样,很难准确地说出你在问什么。

标签: node.js typescript google-cloud-functions


【解决方案1】:

您可以在定义cors 变量的位置添加选项。

const cors = require('cors')({origin: function (origin, callback) {
      if (domainsList.indexOf(origin) !== -1) {
        callback(null, true)
      } else {
        callback(new Error('Not allowed by CORS'))
      }
    }
});

并将其从.sendEmail 函数行中删除:

cors(req, res, () => { 
  console.log("Domain Whitelisted")
});

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-12-24
    • 1970-01-01
    • 2016-07-23
    • 2019-11-05
    • 2018-02-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多