• Ant Design Pro V5 + Django Restful Framework Token认证后台实现(一)


    一直想找一个跟D365 FO一样的开发平台做一些开发,D365 FO的开发平台的确封装得太好了,开发人员不需要了解任何前端的知识,这些东西都被控件封装好了,开发者完全看不到前端的html,css和JavaScript这些东西,只要拖拽控件就好了。
    真正做到了只需要关注业务逻辑,开发效率的确是高。
    找了很久,找不到类似的东西,这也可以理解,毕竟D365 FO是个商业性的软件。
    最后决定用Ant Design Pro V5做前端,后台的API用Django Restful Framework实现,目的是想能找出一条可以快速开发小型中后台应用的方法。
    做了这么多年AX,被AX开发平台的简易性惯坏了,外面的世界完全搞不懂了。
    没有用过Ant Design Pro V5,也没用过Django,更不用说Django Restful Framework了,甚至Python都还没入门,真是零基础开始。
    主要做AX开发,这个开发只是业余时间玩,不知道是不是能坚持下来。

    这一篇先说一下Django Restful Framework的Token认证的实现。
    简单说一下基本的概念。
    Django是一个用来快速创建web应用的框架,它有自己的View也可以快速页面,Django的文档非常完善
    https://www.djangoproject.com/
    但是选择了Ant Design Pro V5作为前端框架,那么这个View就用不着了,只想用Django做API的提供者。
    现在很多都用Restful API来提供API,而Django也有对应的框架Django Restful Framework来方便地提供Restful API,这个框架的文档也很完善。
    https://www.django-rest-framework.org/
    这些文档内容都很多,完全从头到尾看完,对业余时间搞这个来说工作量太大,基本上不可能,本来也没多少业余时间。
    只能采取按需索取了,想实现一个功能,找到对应的段落和文章看,但这样有一个问题,很多时候只能看到局部,不能全面了解,导致找到的实现方式可能不是最好的,甚至是最差的,不过这种事情就很难两全了,只能逐渐改善了。

    首先遇到的第一个问题是如何认证?后台怎么知道某个访问请求是合法的经过认证的,这个有很多方案,总体来说基于Session的和基于Token的。
    这两种方式的优缺点的对比分析网上有很多资料,这里就不讨论了,最终我选择了基于Token的认证方式。
    Token认证又有很多方式,Django Restful Framework也提供了基于Token认证的实现方法,因为D365 FO的API认证用的是JWT的Token,我也觉得这种方式更简单,后台不需要保存Token信息。
    Django Restful Framework有一个JWT的扩展Simple JWT可以方便地实现JWT认证,网址如下:
    https://django-rest-framework-simplejwt.readthedocs.io/en/latest/

    要做的东西基本上明确了,使用Django Restful Framework Simple JWT实现用户登陆验证成功以后获取JWT并返回给调用的前端。

  • 相关阅读:
    quora 中有关angular与emberjs的精彩辩论
    迷你MVVM框架 avalonjs 0.94发布
    重写自己,减少判断 ---- 引发的思考
    JSON数据的优化
    记录全局错误
    Bat相关的项目应用
    C#中如何实现json转化时只处理部分属性
    JSON数据的处理中的特殊字符
    C# .net中json字符串和对象之间的转化方法
    VS调试 ---- 监视窗口、即时窗口、输出窗口
  • 原文地址:https://www.cnblogs.com/Farseer1215/p/14193640.html
Copyright © 2020-2023  润新知