node.js写api,api的权限要不要加,如果要加的话怎么加?
自己评论一发
@wocaatm 路由加个中间件,判断下条件能否让其访问
看你需求了,不过一般要加!加的话就是自己加了
https://cnodejs.org/topic/58c1477b06dbd608756d0bca 可以参考我的这篇关于RESTfulApi权限实践
用的什么框架,也要写API
其实个人以为只要?username=xxx&password=xxx,再用上https即可。token很费事。
?username=xxx&password=xxx
token
参考我的 https://github.com/open-node/open-rest 里的样板工程,权限验证做成一系列的小函数,控制器里灵活的组合这些小函数,这样每个函数足够简单,组合以后功能足够强大。
jwt
看cnodejs服务器的源码 From Noder
其实最简单的办法就是去判断url, 什么url需要验证,什么的不需要,比如我这个设置需要验证url的都统一url上面有一个 /auth_ 标示,对于这类url,则去判断登录状态
/** * auth 中间件,所有需要验证路由,必须有 '/auth_' * @param ctx * @param next */ module.exports = async (ctx, next) => { try { let route = ctx.originalUrl; let reg = /\/auth_/; if(reg.test(route)){ if(!ctx.session.user){ throw new Error('请先登录') } } await next(); } catch (e) { ctx.status = 401; ctx.body = e.message } };
整个项目地址,可以看这个:https://github.com/yujintang/koa2-server
推荐swagger-tools , 呵呵
可以 写一个 yml 文件, 写出 每个角色所属权限, 使用中间件判断
@wocaatm en
@sooxie 1
可以用node-Casbin:https://github.com/casbin/node-casbin
CNode 社区为国内最专业的 Node.js 开源技术社区,致力于 Node.js 的技术研究。
自己评论一发
@wocaatm 路由加个中间件,判断下条件能否让其访问
看你需求了,不过一般要加!加的话就是自己加了
https://cnodejs.org/topic/58c1477b06dbd608756d0bca 可以参考我的这篇关于RESTfulApi权限实践
用的什么框架,也要写API
其实个人以为只要
?username=xxx&password=xxx,再用上https即可。token很费事。参考我的 https://github.com/open-node/open-rest 里的样板工程,权限验证做成一系列的小函数,控制器里灵活的组合这些小函数,这样每个函数足够简单,组合以后功能足够强大。
jwt
看cnodejs服务器的源码 From Noder
其实最简单的办法就是去判断url, 什么url需要验证,什么的不需要,比如我这个设置需要验证url的都统一url上面有一个 /auth_ 标示,对于这类url,则去判断登录状态
整个项目地址,可以看这个:https://github.com/yujintang/koa2-server
推荐swagger-tools , 呵呵
可以 写一个 yml 文件, 写出 每个角色所属权限, 使用中间件判断
@wocaatm en
@sooxie 1
可以用node-Casbin:https://github.com/casbin/node-casbin