node.js - 如何让快递服务器一次只服务一个 API 请求
问题描述
我已经从 node express 服务器公开了一个 API,我希望只处理一个请求(由于资源限制),而其他请求应该被简单地拒绝。无论如何要做到这一点?
解决方案
使用express-rate-limit,特别是如果您想为多条路线重复实施。
npm install --save express-rate-limit
const rateLimit = require("express-rate-limit");
const limiter = rateLimit({
windowMs: 15 * 60 * 1000, // 15 minutes
max: 1 // limit each IP to 1 request per windowMs
});
// apply to all requests
app.use(limiter);
// only apply to requests that begin with /api/
app.use("/api/", limiter);
// only apply to single route
app.post("/create-account", limiter , function(req, res) {
//...
});
推荐阅读
- vb.net - 使用外部库时应用程序冻结
- c# - 在使用计时器多次调用的方法中创建线程
- javascript - 异步未正确等待
- c# - 由二维数组组成的二维数组
- javascript - 在js文件中使用php var
- laravel - 在 Apache 服务器和 webuzo 面板上的 laravel 中删除 /public
- twitter-bootstrap - (引导程序 4)使用粘性导航滚动到选项卡窗格的顶部
- flutter - 如何将变量从多个页面传递到一页颤动?
- php - 无法在 PHP 中为我的字符串设置颜色为红色
- python - 为什么要在 setup.py 和 requirements.txt 中复制我的依赖项?