Просмотр исходного кода

Merge pull request #3 from brettz9/rate-limit

Rate limit
dragfyre 6 лет назад
Родитель
Сommit
ad45d4b1f4
3 измененных файлов с 13 добавлено и 1 удалено
  1. 5 0
      package-lock.json
  2. 1 0
      package.json
  3. 7 1
      server.js

+ 5 - 0
package-lock.json

@@ -699,6 +699,11 @@
         "vary": "~1.1.2"
       }
     },
+    "express-rate-limit": {
+      "version": "5.0.0",
+      "resolved": "https://registry.npmjs.org/express-rate-limit/-/express-rate-limit-5.0.0.tgz",
+      "integrity": "sha512-dhT57wqxfqmkOi4HM7NuT4Gd7gbUgSK2ocG27Y6lwm8lbOAw9XQfeANawGq8wLDtlGPO1ZgDj0HmKsykTxfFAg=="
+    },
     "external-editor": {
       "version": "3.1.0",
       "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz",

+ 1 - 0
package.json

@@ -36,6 +36,7 @@
   "dependencies": {
     "deep-extend": "^0.6.0",
     "express": "^4.17.1",
+    "express-rate-limit": "^5.0.0",
     "fsevents": "^2.1.2",
     "randomatic": "^3.1.1",
     "rc": "^1.2.8"

+ 7 - 1
server.js

@@ -1,7 +1,13 @@
 var express = require('express'),
   app = express(),
   port = process.env.PORT || 1844,
-  bodyParser = require('body-parser');
+  bodyParser = require('body-parser'),
+  RateLimit = require('express-rate-limit');
+
+app.use(new RateLimit({
+  windowMs: 1 * 60 * 1000, // 1 minute
+  max: 20
+}));
 
 app.use(bodyParser.urlencoded({ extended: true }));
 app.use(bodyParser.json());