什么是使用angular和django-rest-framework使当前用户登录的正确方法?

时间:2019-05-05 15:56:52

标签: django angular django-rest-framework

我使用Angular作为前端,而Django作为后端。提取已登录的用户时,由于Angular在收到令牌后必须向后端询问用户数据,因此在顶部菜单中显示的用户名中会有一个小滞后或“闪烁”,这是在收到令牌并等待诺言返回用户数据。

要进行身份验证和登录,请使用django rest框架:

url(r'^token-auth/', obtain_auth_token)

这将返回一个令牌-一切正常,我已登录。但是此调用不返回任何用户数据,因此为解决此问题,我创建了一个单独的api视图来返回用户。收到令牌后,将触发Angular中的服务以直接获取用户数据。

但是要做到这一点,Angular必须分别调用用户视图,这又可能导致“滞后”,导致用户数据在登录后不会立即加载到菜单中(因为Angular必须再次获取用户数据) ,在收到第一个呼叫的用户令牌后。)

这让我开始思考,在收到令牌并“蜂鸣登录”后获取登录用户数据的最佳方法是什么?有更好的方法吗?

或者如果这是正确的方法,也许我应该以其他方式处理菜单中的数据加载?

0 个答案:

没有答案