7-1 drf的token登录和原理

7-1 drf的token登录和原理

 

看到这个登录页了

 

是因为配置了

    url(r'^api-auth/', include('rest_framework.urls', namespace='rest_framework')),

 

可以看到:

 

接下来:

进入:

D:\Envs\MxShop\Lib\site-packages\django\contrib\auth\views.py

    @method_decorator(csrf_protect)

 

看页面:

<input type="hidden" name="csrfmiddlewaretoken" value="KrAfGxZPUu8fs038EFUgxglQ5A5wbu4JTuL2fGC6PgPnQfSXKhGPM0kG0at04YWO">

 

--------------------

老师说:下面是干货

https://www.django-rest-framework.org/api-guide/authentication/

 

是django自带的

下面的是 rest framework 的

 

先把配置信息拷贝过来

 

REST_FRAMEWORK = {
    'DEFAULT_AUTHENTICATION_CLASSES': (
        'rest_framework.authentication.BasicAuthentication',
        'rest_framework.authentication.SessionAuthentication',
    )
}

放到

 

第二步:

TokenAuthentication 的配置

 

    'rest_framework.authtoken'

配置到

 

下面生成表结构:

1. makemigrations

2.migrate

执行之前:

新生成的表:

authtoken_token

打开表:

实际上一个用户有一个token

之前没有配置,所以创建第一个账户的时候,没有这回事。

下面新创建一个账户:

表里还是没有

下面配置一下

下面测试一下这个接口:

 

关于HttpRequester插件的问题

 

我用的是:

首先设置:

 

得到:

 

现在看下数据库

有token了

拿到 token 之后

 

打个断点:

 

没有得到用户

添加

        'rest_framework.authentication.TokenAuthentication',

这次获取到了

 

老师讲了好多话,之后说去他博客看看

http://projectsedu.com/

http://projectsedu.com/2016/10/17/django%E4%BB%8E%E8%AF%B7%E6%B1%82%E5%88%B0%E8%BF%94%E5%9B%9E%E9%83%BD%E7%BB%8F%E5%8E%86%E4%BA%86%E4%BB%80%E4%B9%88/

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值