cloudFlare 上指向域并禁用代理后出现 cors 问题"/>
在 cloudFlare 上指向域并禁用代理后出现 cors 问题
我的应用程序在使用 corrs 时按预期工作,但是在使用 cloudFlare 指向域名并禁用代理后,我遇到了 cors 问题!!! .
我也换了我的旧服务器,我开始了新的,旧的域名也搬到了新服务器。
我的 index.js
/* eslint-disable @typescript-eslint/no-explicit-any */
/* eslint-disable @typescript-eslint/no-var-requires */
import { createDatabaseConnection } from './src/config/connection'
require('dotenv').config()
const express = require('express')
const userRouter = require('./src/routes/usersRoute/router')
const authRouter = require('./src/routes/authRoute/login')
const coursesRouter = require('./src/routes/coursesRoute/courses')
const ModuleRouter = require('./src/routes/modulesRoute/modules')
const app = express()
const PORT = process.env.PORT || 2222
const bodyParser = require('body-parser')
const cors = require('cors')
const cookieParser = require('cookie-parser')
const domainsFromEnv = process.env.CORS_DOMAINS || '*'
const whitelist = domainsFromEnv.split(',').map((item) => item.trim())
const corsOptions = {
origin: function (origin: any, callback: CallableFunction) {
if (!origin || whitelist.indexOf(origin) !== -1) {
callback(null, true)
} else {
callback(new Error('Not allowed'))
}
},
credentials: true,
}
app.use(express.json({ limit: '5000mb' }))
app.use(cors(corsOptions))
app.use(
bodyParser.urlencoded({
limit: '5000mb',
parameterLimit: 100000,
extended: true,
})
)
app.use(cookieParser())
app.use(
bodyParser.json({
limit: '5000mb',
})
)
const routes = [userRouter, authRouter, coursesRouter, ModuleRouter]
const appRouter = routes.reduce((router, route) => router.use(route))
app.use('/api', appRouter)
app.get('/', (_req: any, res: any) => res.send('working'))
app.listen(PORT, () => createDatabaseConnection());
我的域名添加到 .env 文件中。
回答如下:更多推荐
在 cloudFlare 上指向域并禁用代理后出现 cors 问题
发布评论