问前端,你们单页应用时,用户登录鉴权一般是怎么做的?

2018-03-19 20:10:43 +08:00
 zjsxwc

作为后端我用不用提供一个专门的接口来判断用户是否登录?还是只需要每次请求接口时发现没登录就返回个特定 code 就行?

6368 次点击
所在节点    程序员
16 条回复
feverzsj
2018-03-19 20:14:00 +08:00
任何需要授权的接口,后端都需要检查授权,如果没授权就返回错误代码,前端再自行处理
per
2018-03-19 20:14:23 +08:00
带 token,没登录返回 401 就行
duan602728596
2018-03-19 20:32:09 +08:00
登录接口返回 token,headers 带 token 验证,没有 token,返回 401。
注意,注册和找回密码这种接口就不要带 token 了,要不然前端会问候你 10000 次的,真的。
zhixiao
2018-03-19 20:33:39 +08:00
不需要的
undercloud
2018-03-19 20:39:37 +08:00
每个请求都要验证,否则用专门接口的话,岂不是将验证逻辑交给了前端 JS 了吗,那用户就能随便绕过你的系统登陆验证了
zjsxwc
2018-03-19 20:41:06 +08:00
@duan602728596

和手机 api 一样啊, 我应该可以直接把手机 App 的那套接口给前端写单页应用吧。

还有个问题,你们部署单页应用时,后端是不是只需要给 1 个与 api 接口同域名的特定的 url 地址,然后这个地址返回的 html 里加载单页 js 文件就好了?不需要后端再提供别的 url 地址了吧?

你们是怎么发布新版本的?
crab
2018-03-19 20:45:12 +08:00
JWT?
duan602728596
2018-03-19 21:27:08 +08:00
@zjsxwc app 的接口是可以用的。url 地址不需要相同,做好跨域处理就好了。部署版本也是各部署各的,互相没有影响。
cevincheung
2018-03-19 21:31:18 +08:00
js 中如何多个数据模型继承一个公共的,然后无论哪个 model 执行 request 都会先执行 precheck 过了以后再进行调用 callback。 -_- 或者说应该换个思路?
RorschachZZZ
2018-03-19 21:54:19 +08:00
登录分配 token-》前端每次请求携带 token-》后台验证 token (没有或非系统发出的 返回 401 )
ivydom
2018-03-19 22:12:51 +08:00
推荐用 authing.cn
badcode
2018-03-20 08:30:29 +08:00
@ivydom 你到处推呀,
在想要不要 @管理员!?
因为
一来没说明为什么要用你那个?
二来这样给链接也不利于别人访问!?
sunzongzheng
2018-03-20 08:42:47 +08:00
jwt
zhwithsweet
2018-03-20 09:15:41 +08:00
拦截每一次请求,加 token 即可
exonuclease
2018-03-20 09:48:40 +08:00
检查 token 啊
jy02534655
2018-03-20 11:03:16 +08:00
服务端验证权限,这个和是不是单页应用没有关系的

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/439490

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX