首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >更改身份验证过程

更改身份验证过程
EN

Stack Overflow用户
提问于 2019-11-11 17:19:43
回答 1查看 19关注 0票数 0

我正在创建一个项目,为了首先构建它,我使用了https://cookiecutter-django.readthedocs.io/en/latest/的千篇一律的工具。

这个模板对我很有用,但现在我正在尝试为我的项目构建一个API,我在身份验证过程中遇到了一些问题。

一切正常,除了视图通过头中发送的令牌进行身份验证的过程。我所说的观点如下:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
class HelloView(APIView):
    permission_classes = (IsAuthenticated,)

    def get(self, request):
        content = {'message': 'Hello, World!'}
        return Response(content)

然后,我只需向发送令牌的相应URL发出http请求,如下所示:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
http http://127.0.0.1:8000/api/hello/ 'Authorization: Token 8b59a60cd91c29f4e2a7be54fbd6d32c7bd57377'

然后,我得到的响应是:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
{
"detail": "Authentication credentials were not provided."
}

然后,如果我使用浏览器输入URL,它将显示相同的内容,除非我以前登录过Django admin。出于这个原因,我认为基本上发生的是身份验证过程中的一些配置问题。我已将以下变量添加到我的设置中:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
REST_FRAMEWORK = {
'DEFAULT_AUTHENTICATION_CLASSES': [
    'rest_framework.authentication.BasicAuthentication',
    'rest_framework.authentication.SessionAuthentication',
],
'DEFAULT_PERMISSION_CLASSES': [
    'rest_framework.permissions.IsAuthenticated',
]
}

但是我没有对cookiecutter模板身份验证做任何更改,所以正如我所说的,我认为这可能是问题所在,尽管我不知道如何解决它。

我的最后一个问题是,您知道如何在给定权限类的情况下更改身份验证的完成方式吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-11-12 09:38:49

您希望用户使用令牌进行身份验证。因此,您需要在设置中设置令牌身份验证:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
  "DEFAULT_AUTHENTICATION_CLASSES": (
        "rest_framework.authentication.TokenAuthentication",
        "rest_framework.authentication.SessionAuthentication",
        "rest_framework.authentication.BasicAuthentication",
    ),

或者,如果只想让一个视图使用令牌身份验证,而不是所有视图都默认使用令牌身份验证,那么可以在视图中使用authentication_classes变量。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58805922

复制
相关文章
Material Design — 按钮( Buttons)
自上次参加完回音分享会后,我下定决心要洗心革面乖乖打基础,于是开启了这个part,争取两个月不间断更新,写完Material Design与iOS中的组件(顺便学学英语),以便今后在使用的时候完全不虚
霖酱
2018/05/17
3.9K0
AngularDart Material Design 按钮 顶
将mixin用于颜色的优点是它们不会覆盖禁用的状态颜色。您也可以像使用普通DOM元素一样使用CSS设置按钮的样式,尽管这也会影响禁用状态:
南郭先生
2018/09/30
1.3K0
Flutter容器类组件
⚠️注意, Flutter官方并没有对Widget进行如此划分。中文版《Flutter实战》对其分类主要是方便讨论和对Widget功能区分记忆。
白白白小艾
2022/03/24
3.9K0
AngularDart Material Design 应用布局 顶
应用布局 应用程序布局是一个样式,指令和组件系统,当它们一起使用时,可以提供材质外观和感知应用程序的层叠关系。 它根据材料规格提供应用栏,抽屉和导航样式。
南郭先生
2018/09/30
4.1K0
Flutter 全栈式——页面框架
对于没有相关基础的人,在正式学习App的UI之前,建议先了解Material Design相关的知识
arcticfox
2020/06/11
2.9K0
自己做个 Material Ripple 效果的按钮
我第一次发现 Material Design 是几年前玩 Android(当时还不会开发 Android 应用程序)时候看到的些贴文。那时候我就超级喜欢它的按钮组件。它有着波纹效果,以简单,优雅的方式为用户提供反馈,Q 弹爆汁儿~
用户3806669
2021/04/15
1.5K0
自己做个 Material Ripple 效果的按钮
深入浅出 NavigationUI | MAD Skills
这是第二个关于导航 (Navigation) 的 MAD Skills 系列,如果您想回顾过去发布的内容,请参考下面链接查看:
Android 开发者
2022/03/09
3K0
深入浅出 NavigationUI | MAD Skills
交互设计实战!TAB导航与侧边抽屉导航的巅峰对决
编者按:本文作者Anthony Rose,是社交网络电台Zeebox的联合创始人及CTO,文章不仅分析了侧边栏导航和Tab导航的利弊,还有改版过程进行A/B test 的详尽过程,且最后也给了建议,读完能对这两种导航有清晰的认识,非常有价值的经验分享 。 设想你需要设计一个含有许多页面和模块,不能在一屏内显示完全的应用。你一定会首先想到去设计一个底部或顶部的Tab导航。等一下,多出来的一排导航看上去有点碍眼?我们尝试下把他们收到侧边栏里,或者叫安卓团队给它的名字“侧边抽屉导航”。 如果你们的应用的也是多
BestSDK
2018/02/26
2.8K0
交互设计实战!TAB导航与侧边抽屉导航的巅峰对决
AngularDart Material Design 是/否 按钮 顶
可以使用MaterialSaveCancelButtonsDirective等指令来提供基本文本自定义,该指令用保存/取消替换是/否。
南郭先生
2018/09/30
6130
Kotlin学习资料
目录 awesome-kotlin-android 关于 目录 开源库 框架 DSL 扩展 UI 通用库 动画 Toolbar 按钮 依赖注入 数据绑定 代理 数据库 网络 日志 函数式编程 下载 图片 拍照 工具 其他 完整 app DEMO 书籍 视频 ​ 开源库 框架 KBinding - 使用kotlin实现的Android MVVM框架 Kotlin-Android-Template - 快速生成MVP 架构的项目模板 android-clean-architecture-b
xiangzhihong
2022/11/30
5470
AngularDart Material Design 单选按钮 顶
具有材料风格的单选按钮。 通常与material-radio-group一起使用。 选中后,无法通过用户操作取消选中相同的单选按钮。
南郭先生
2018/09/30
3.4K0
欢迎体验 | Wear OS 版 Compose 开发者预览版
在今年的 Google I/O 大会 上,我们宣布将 Jetpack Compose 的优秀特性引入 Wear OS。在顺利发布多个 alpha 版本之后,Wear OS 版 Compose 现已推出开发者预览版。
Android 开发者
2022/03/24
1.6K0
欢迎体验 | Wear OS 版 Compose 开发者预览版
干货!iOS 与 Android 的APP 设计差异
了解并适当结合平台规范与优势,才能做到最佳的用户体验。在《最新Android &
奔跑的小鹿
2022/01/17
3.5K0
干货!iOS 与 Android 的APP 设计差异
Flutter | 容器组件
EdgeInsetsGeometry 是一个抽象类,开发中,我们一般都使用 EdgeInsets 类,他是 EdgeInsetsGeometry 的子类,定义了一下设置填充的方法
345
2022/02/11
5.6K0
Flutter | 容器组件
Material Design — 底部导航(Bottom Navigation)
自上次参加完回音分享会后,我下定决心要洗心革面乖乖打基础,于是开启了这个part,争取两个月不间断更新,写完Material Design与iOS中的组件(顺便学学英语),以便今后在使用的时候完全不虚
霖酱
2018/05/17
4.1K0
Flutter开发-容器类组件
Padding可以给其子节点添加填充(留白),和边距效果类似。我们在前面很多示例中都已经使用过它了,现在来看看它的定义:
码客说
2020/05/14
3.6K0
IntelliJ IDEA 新版 UI 中的项目导航改进
IntelliJ IDEA 在新版中对项目导航的 UI 进行了改进。你可以在 IntelliJ IDEA 中通过单击上面项目的名称来选择自己的项目。在老的 IntelliJ IDEA 中,你需要多次单击鼠标才能完成上面的操作。这也算 IntelliJ IDEA 一个不错的改进。
HoneyMoose
2023/02/13
5510
IntelliJ IDEA 新版 UI 中的项目导航改进
Android Design Support Library初探-更新中
这个兼容库容易和Google之前发布的 Android Support Library 22.1 混淆,两者的区别在于:
小小工匠
2021/08/16
9800
【软件开发规范七】《Android UI设计规范》
Android 定义颜色color时有6位或8位值的区别,6位(如:#0470C4)就是RGB,值8位(如:#1E000000)头两位是透明度,后6位是RGB值,00是完全透明,FF是完全不透明,比较适中的透明度值是 1E。
再见孙悟空_
2023/02/10
5.2K0
【软件开发规范七】《Android UI设计规范》
Flutter 可折叠边栏
移动应用程序具有多种方法来处理屏幕之间的导航,例如导航抽屉,底部导航栏,滑动选项卡等。
老孟Flutter
2021/05/11
6.4K0
Flutter 可折叠边栏

相似问题

Scrollview空白区域问题

20

断言错误问题

25

Pytest断言错误问题

12

找不到空白信箱错误

12

Webpack -错误:找不到模块‘节点:断言’

18
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文