我已创建通过本教程引导的Django的休息framwork后端:添加角登录前端Django的REST框架后端
http://www.django-rest-framework.org/
我已经上传了后端:
https://github.com/jakkan/grader
我想建立一个角度前端到djano rest框架的后端。我对Angular有相当的了解,但不知道如何创建一个登录和注销的前端。
我希望这不是一个太大的问题,但是如何添加一个用于登录和退出的Angular前端?
我已创建通过本教程引导的Django的休息framwork后端:添加角登录前端Django的REST框架后端
http://www.django-rest-framework.org/
我已经上传了后端:
https://github.com/jakkan/grader
我想建立一个角度前端到djano rest框架的后端。我对Angular有相当的了解,但不知道如何创建一个登录和注销的前端。
我希望这不是一个太大的问题,但是如何添加一个用于登录和退出的Angular前端?
一旦你创建了使用django-rest-framework
的休息API,那么你可能会创建许多端点,就像你创建和配置成URL一样。
所以要整合其余的api,首先你需要访问你的休息api暴露的域,我们将假设localhost:8000
。
现在你应该创建一个角度常量来保存这个剩余的端点域信息,因为我们将在我们的角度项目中的很多地方使用很多API,所以为了保持它的干净,我们必须使用常量,这可以注入到任何地方我们需要休息终点。在AgnularJS
angular.module('angularApp')
.constant('restEndPoint', 'http://localhost:8000');
REST端点不变现在,这将在任何地方通过项目的注入,如服务avaialbe。
这取决于你如何设计你的休息API,但如果你有休息标准设计你的休息API,那么我会建议使用$resource
,而不是使用$http
。
我总是喜欢在factory
里写我的持久逻辑,再次选择它。
以下是以角度方式使用其余端点的示例。
厂
angular.module('AngularApp')
.factory('TodoService', ['$resource', 'restEndPoint', function ($resource, restEndPoint) {
return $resource(restEndPoint+'/todos/:id')
}]);
控制器
angular.module('AngularApp')
.controller('TodoCtrl', function ($scope, TodoService) {
var Todo = new TodoService();
// Now Todo is an $resource instance. Which can be used to get/post/patch/delete data on rest api. such as following.
// GET all records.
Todo.$query();
// GET specific record based on id.
Todo.$query({id:1});
// POST data to create new Todo item.
newTodo = { title: 'Task 1', completed: false}
Todo.$save(newTodo)
// PUT/PATCH specific record base on id.
editTodo = { title: 'Task title changed', completed: false}
Todo.$update({id: 1}, editTodo);
});
我希望你明白与angularJS的REST API集成。如果您有任何疑问,请告诉我。
谢谢
@ user1283776让我知道它是否有用,并通过接受答案让其他人知道。 – CrazyGeek
我想你只是需要在你的角度使用$ http或$资源使用休息终点。 – CrazyGeek
谢谢!你能举一个例子作为解决方案吗?这会有很大的帮助。我很难理解如何去做 – user1283776