简体   繁体   English

为什么应用程序在使用 express-rate-limit 时会崩溃?

[英]Why application crashes when using express-rate-limit?

I'm using express-rate-limit package version 6.0.1 to limit hits of request an I also had used express-rate-limit documentation found on https://www.npmjs.com/package/express-rate-limit我正在使用 express-rate-limit package 6.0.1 版来限制请求的命中,我还使用了https://www.npmjs.com/package/express-rate-limit上的 express-rate-limit 文档

However when I use this in my app, my application crashes.但是,当我在我的应用程序中使用它时,我的应用程序崩溃了。 I"m not understanding what is going on here. I have search allot for a conclusion but without any results. Can someone give me an idea of what I'm doing wrong???我不明白这里发生了什么。我已经搜索分配了一个结论,但没有任何结果。有人可以告诉我我做错了什么吗???

...

//Load env vars
dotenv.config({ path: "./config/config.env" });

//Connect to database
connectDB();

const app = express();

//Set Static folder
app.use(express.static(path.join(__dirname, "public")));

// Body Parser
app.use(express.json());

// Cookie parser
app.use(cookieParser());

//Dev logging middleware
if (process.env.NODE_ENV === "development") {
  app.use(morgan("dev"));
}

// File uploading
app.use(fileUpload());

// Sanitize data
app.use(mongoSanitize());

// Set security headers
app.use(helmet());

// Prevent XSS attacks
app.use(xss());

//Rate limiting
const limiter = rateLimit({
  windowMs: 10 * 60 * 1000, // 10 mins
  max: 1,
});

app.use(limiter);

// Prevent http param pollution
app.use(hpp());

app.use(errorHandler);

const PORT = process.env.PORT || 5000;

const server = app.listen(
  PORT,
  console.log(
    `Server running in ${process.env.NODE_ENV} mode on port ${PORT}`.yellow.bold
  )
);

//Handle unhandled promise rejections
process.on("unhandledRejection", (err, promise) => {
  console.log(`Error: ${err.message}`.red);
  // Close server & exit process
  server.close(() => process.exit(1));
});

错误信息截图

Merry Christmas gurus and keep on coding!!!大师们圣诞快乐,继续编码!!!

you can add .default in require , like this require('express-rate-limit').default .您可以在require中添加.default ,例如require('express-rate-limit').default

i found it on here https://github.com/nfriedly/express-rate-limit/issues/270我在这里找到它https://github.com/nfriedly/express-rate-limit/issues/270

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM