5

我正在使用 Django REST Framework 构建一个带有 Django 后端、Angular 前端和 REST API 的应用程序以供 Angular 使用。当我还在用香草前端开发后端东西时,我使用提供的 Django 身份验证来处理用户身份验证——但现在我正在创建一个基于 REST 的应用程序,我不确定如何进行身份验证。

由于所有用户数据都将通过 API 检索或提交,API 身份验证是否足够?如果是这样,我是否需要删除现有的 Django 身份验证中间件?

现在,当我尝试在应用程序的早期版本上访问 API 端点时,我被引导到看起来像普通 Django 登录表单的地方。如果我输入了有效的用户名和密码,它就不起作用——只是提示重新登录。删除基本的 Django 身份验证会阻止这种情况吗?我想被提示登录,但是我不确定如何使用这些技术来处理。

django-rest-auth 包似乎很有用,并且同一组制作了一个 Angular 模块——但文档并没有过多地安装和提供的端点。最终,我认为这个问题的核心是:如何将身份验证从 Django 提供的完全切换到 django-rest-auth 或 DRF 推荐的其他 3rd 方包之一?

编辑:我在下面发表了这条评论,但我意识到我需要弄清楚组合身份验证将如何工作。我不是在构建单页应用程序,因此将从 Django 提供各个基本页面,但每个页面都会访问各种 API 端点以检索它需要的数据。有没有办法让 django-rest-auth 之类的东西处理所有身份验证?

4

1 回答 1

0

对于偶然发现这个问题的任何人,我都不知道如何使混合方法起作用。让 Django 为每个包含 API 调用的页面提供服务似乎没问题,但我从未见过对 API 发出的任何请求——我相信是由于其他一些安全问题。我确信这是可能的,但我决定使用单页应用程序实现毕竟是为了让事情变得更简单。

于 2016-03-01T14:58:50.573 回答