如何使用 cors 和 expressjs 阻止来自某个来源的路由

How do I block routes from a certain origin with cors and expressjs

现在我已经启用了 cors,所以它只允许一个源可以向 任何路由 发出请求,但我也想这样做 阻塞了那个起点的一些路线。如果他们有任何方式,请回答这个问题!谢谢。

到目前为止我的代码是

app.use(cors({
  origin: process.env.HOST,
}));

我想你可以试试这个

const blacklisted = ['http://example1.com', 'http://example2.com']
const corsOptions = {
  origin: function (origin, callback) {
    if (blacklisted.indexOf(origin) !== -1) {
        callback(new Error('Not allowed by CORS'))
    } else {
        callback(null, true)
    }
  },
}

那你就可以这样用了,

app.get('/route', cors(corsOptions), (req, res, next) => {
  //...
})