mirror of
https://github.com/cnodejs/nodeclub.git
synced 2025-12-08 19:55:55 +00:00
修复操作限制渲染问题:1.返回状态吗改为403 2.前段返回错误页面,api返回结构化数据
This commit is contained in:
parent
29bc337577
commit
f50df2afb4
@ -15,7 +15,7 @@ var router = express.Router();
|
||||
// 主题
|
||||
router.get('/topics', topicController.index);
|
||||
router.get('/topic/:id', middleware.tryAuth, topicController.show);
|
||||
router.post('/topics', middleware.auth, limit.peruserperday('create_topic', config.create_post_per_day), topicController.create);
|
||||
router.post('/topics', middleware.auth, limit.peruserperday('create_topic', config.create_post_per_day, true), topicController.create);
|
||||
|
||||
|
||||
// 主题收藏
|
||||
@ -32,7 +32,7 @@ router.get('/user/:loginname', userController.show);
|
||||
router.post('/accesstoken', middleware.auth, toolsController.accesstoken);
|
||||
|
||||
// 评论
|
||||
router.post('/topic/:topic_id/replies', middleware.auth, limit.peruserperday('create_reply', config.create_reply_per_day), replyController.create);
|
||||
router.post('/topic/:topic_id/replies', middleware.auth, limit.peruserperday('create_reply', config.create_reply_per_day, true), replyController.create);
|
||||
router.post('/reply/:reply_id/ups', middleware.auth, replyController.ups);
|
||||
|
||||
// 通知
|
||||
|
||||
@ -5,7 +5,7 @@ var moment = require('moment');
|
||||
var SEPARATOR = '^_^@T_T';
|
||||
|
||||
var makePerDayLimiter = function (identityName, identityFn) {
|
||||
return function (name, limitCount) {
|
||||
return function (name, limitCount, showJson) { // showJson = true 表示调用来自API并返回结构化数据;否则表示调用来自前段并渲染错误页面
|
||||
return function (req, res, next) {
|
||||
var identity = identityFn(req);
|
||||
var YYYYMMDD = moment().format('YYYYMMDD');
|
||||
@ -23,7 +23,12 @@ var makePerDayLimiter = function (identityName, identityFn) {
|
||||
res.set('X-RateLimit-Remaining', limitCount - count);
|
||||
next();
|
||||
} else {
|
||||
res.send('ratelimit forbidden. limit is ' + limitCount + ' per day.');
|
||||
res.status(403);
|
||||
if (showJson) {
|
||||
res.send({success: false, error_msg: '频率限制:当前操作每天可以进行 ' + limitCount + ' 次'});
|
||||
} else {
|
||||
res.render('notify/notify', { error: '频率限制:当前操作每天可以进行 ' + limitCount + ' 次'});
|
||||
}
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
@ -82,14 +82,14 @@ router.post('/topic/:tid/lock', auth.adminRequired, topic.lock); // 锁定主题
|
||||
router.post('/topic/:tid/delete', auth.userRequired, topic.delete);
|
||||
|
||||
// 保存新建的文章
|
||||
router.post('/topic/create', auth.userRequired, limit.peruserperday('create_topic', config.create_post_per_day), topic.put);
|
||||
router.post('/topic/create', auth.userRequired, limit.peruserperday('create_topic', config.create_post_per_day, false), topic.put);
|
||||
|
||||
router.post('/topic/:tid/edit', auth.userRequired, topic.update);
|
||||
router.post('/topic/collect', auth.userRequired, topic.collect); // 关注某话题
|
||||
router.post('/topic/de_collect', auth.userRequired, topic.de_collect); // 取消关注某话题
|
||||
|
||||
// reply controller
|
||||
router.post('/:topic_id/reply', auth.userRequired, limit.peruserperday('create_reply', config.create_reply_per_day), reply.add); // 提交一级回复
|
||||
router.post('/:topic_id/reply', auth.userRequired, limit.peruserperday('create_reply', config.create_reply_per_day, false), reply.add); // 提交一级回复
|
||||
router.get('/reply/:reply_id/edit', auth.userRequired, reply.showEdit); // 修改自己的评论页
|
||||
router.post('/reply/:reply_id/edit', auth.userRequired, reply.update); // 修改某评论
|
||||
router.post('/reply/:reply_id/delete', auth.userRequired, reply.delete); // 删除某评论
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user