Commit 3e43f94c authored by 姜登's avatar 姜登

ip限制

parent 948b667e
Pipeline #18415 passed with stage
in 6 seconds
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
* @Author: jd * @Author: jd
* @Date: 2019-02-25 18:59:53 * @Date: 2019-02-25 18:59:53
* @LastEditors : jd * @LastEditors : jd
* @LastEditTime : 2019-12-21 15:07:47 * @LastEditTime : 2019-12-21 15:08:49
*/ */
'use strict'; 'use strict';
...@@ -41,17 +41,19 @@ class CacheService extends Service { ...@@ -41,17 +41,19 @@ class CacheService extends Service {
if (order.appKey === '3BA01E15AC6742E2883ADA4817840D5F' && value.status === 'login') { if (order.appKey === '3BA01E15AC6742E2883ADA4817840D5F' && value.status === 'login') {
const ip = ctx.request.ip.split(','); const ip = ctx.request.ip.split(',');
const iplimit = await app.redis.get(ip); const iplimit = await app.redis.get(ip);
if (!iplimit && ip[0] !== '101.71.242.179' && ip[0] !== '122.224.130.226') { if (ip[0] !== '101.71.242.179' && ip[0] !== '122.224.130.226') {
await app.redis.set(ip, JSON.stringify({ count: 1 }), 'EX', 15 * 3600); if (!iplimit) {
ctx.logger.info(`ipLimit set ${ip[0]} value:`, 1); await app.redis.set(ip, JSON.stringify({ count: 1 }), 'EX', 15 * 3600);
} else { ctx.logger.info(`ipLimit set ${ip[0]} value:`, 1);
const { count } = JSON.parse(iplimit); } else {
await app.redis.set(ip, JSON.stringify({ count: count + 1 }), 'EX', 15 * 3600); const { count } = JSON.parse(iplimit);
ctx.logger.info(`ipLimit ADD ${ip[0]} value:`, count + 1); await app.redis.set(ip, JSON.stringify({ count: count + 1 }), 'EX', 15 * 3600);
if (count + 1 > 30) { ctx.logger.info(`ipLimit ADD ${ip[0]} value:`, count + 1);
ctx.logger.info(`ipLimit ${ip[0]} MAX30LIMIT 提交任务失败`); if (count + 1 > 30) {
ctx.throw(400, { message: '提交任务失败' }); ctx.logger.info(`ipLimit ${ip[0]} MAX30LIMIT 提交任务失败`);
return; ctx.throw(400, { message: '提交任务失败' });
return;
}
} }
} }
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment