昨天这篇文章Edusoho之Basic Authentication提到了X-Auth-Token。今天我主要讲的是Edusoho之X-Auth-Token的请求API方式。

至于为什么建议不要用HTTP Basic Authentication,上面这篇文章已经说清楚了。

不过我还是要强调一下这一点。因为本篇文章就是着重说这个的。下面进入正文:

还是以Edusoho对外API为例:

curl-X POST -H "Accept:application/vnd.edusoho.v2+json" -H "X-Auth-Token: nzGrtcsDsrFzrId2hoLYfUafskRJ0pb9" http://demo.edusoho.com/api/tokens

初看时,我不太明白这个X-Auth-Token是如何产生的,为此我通过搜索引擎搜了又搜,仍然找不到我想要的答案。

随后我转念一想,也许Http Basic Authentication与X-AUTH-Token存在某种联系。

于是我用Http Basic Authentication的方式请求获取对应的数据后,如图:

然后我将这个token复制,随后再使用X-AUTH-TOKEN的方式请求其它Edusoho API,发现我的猜想果然是对的(成功请求并获取对应的数据),如图:

如果要说为什么要使用X-Auth-Token这种方式请求需要认证的接口数据,我经过测试接口对比(使用Http Basic Authentication的方式和X-Auth-Token方式),得出的结论如下:
正如一些博文的作者所倡导的那样,之所以不建议使用Basic

Authentication的方式是因为对于需要认证的接口,每次请求都需要携带用户名和密码(base64加密的,同时也可以解密,存在极大的安全风险)。而X-AUTH-TOKEN就显得安全的多,因为只需第一次这样做,随后拿到对应的token后,就不必这样做了。而且这个token并不是base64,至于是什么我也不知道(我用了在线加解密网站解密(acs,des等),都发现解密不了),由此可见X-AUTH-TOKEN还是要比HTTP
Basic Authentication这种认证方式要安全的多。

Edusoho之X-Auth-Token的更多相关文章

  1. lf 前后端分离 (1) auth,token认证

    一.关于登录验证 用户在登录的时候会通过验证以及滑动解锁,注意的是需要后端if verify(request.data): 来判断是否发送了那三个验证数据 通过 random_str=str(uuid ...

  2. laravel Auth token创建于使用

    token 的创建和使用, https://laravelacademy.org/post/3640.html 用户表密码字段验证修改,不只是password https://www.jianshu. ...

  3. Edusoho之Basic Authentication

    通过如下代码,可以正常请求并获取对应的数据: curl -X POST -H "Accept:application/vnd.edusoho.v2+json" -H "A ...

  4. 在ASP.NET Core中使用Angular2,以及与Angular2的Token base身份认证

    注:下载本文提到的完整代码示例请访问:How to authorization Angular 2 app with asp.net core web api 在ASP.NET Core中使用Angu ...

  5. 在ASP.NET Core中实现一个Token base的身份认证

    注:本文提到的代码示例下载地址> How to achieve a bearer token authentication and authorization in ASP.NET Core 在 ...

  6. [转]NET Core中实现一个Token base的身份认证

    本文转自:http://www.cnblogs.com/Leo_wl/p/6077203.html 注:本文提到的代码示例下载地址> How to achieve a bearer token ...

  7. 基于Token的WEB后台认证机制

    几种常用的认证机制 HTTP Basic Auth HTTP Basic Auth简单点说明就是每次请求API时都提供用户的username和password,简言之,Basic Auth是配合RES ...

  8. NET Core中实现一个Token base的身份认证

    NET Core中实现一个Token base的身份认证 注:本文提到的代码示例下载地址> How to achieve a bearer token authentication and au ...

  9. Spring Cloud中Feign如何统一设置验证token

    代码地址:https://github.com/hbbliyong/springcloud.git 原理是通过每个微服务请求之前都从认证服务获取认证之后的token,然后将token放入到请求头中带过 ...

  10. 使用Vuex来处理Authentication token

    https://www.cnblogs.com/chentianwei/p/10156459.html 之前博客:建立了一个app.使用loacal storage 来管理tokens(通过clien ...

随机推荐

  1. 在vue组件中访问vuex模块中的getters/action/state

    store的结构: city模块: 在各模块使用了命名空间的情况下,即 namespaced: true 时: 组件中访问模块里的state 传统方法: this.$store.state['模块名' ...

  2. 使用sudo进行Linux权限升级技巧

    0x00 前言 在我们之前的文章中,我们讨论了如何使用SUID二进制文件和/etc/passwd 文件的Linux权限提升技巧,今天我们发布了另一种“使用Sudoers文件进行Linux权限提示技巧” ...

  3. Windows上安装ElasticSearch7

    安装JDK1.8(包括)以上版本 安装ElasticSearch ElasticSearch下载地址: https://www.elastic.co/downloads/elasticsearch 双 ...

  4. 在DoNetMVC中使用控制反转和依赖注入【DI】

    本次是在MVC5中使用Autofac 第一步:程序包管理器控制台 Install-Package Autofac.MVC5 引入nuget包 这样成功之后,会在引用中出现两个DLL,分别是Autofa ...

  5. Java开发环境之IntelliJ IDEA

    查看更多Java开发环境配置,请点击<Java开发环境配置大全> 贰章:IntelliJ IDEA安装教程 1)去官网下载IDEA安装包 https://www.jetbrains.com ...

  6. Windows安装redis报错处理(转!)

    要谈则谈,要打便打! ---2019.5.9,贸易战 转自:http://www.yayihouse.com/yayishuwu/chapter/1297 安装redis报错信息 [9204] 15 ...

  7. 《构建之法》个人第二次作业之git学习

    GIT地址 点一下 GIT用户名 Mretron 学号后五位 62517 博客地址 点一下 作业链接 点一下 在征得陈老师的同意下,使用java面向对象语言+IDEA工具完成本次作业 一.前期配置 虽 ...

  8. Linux 修改文件目录权限

    修改文件目录权限 chmod​ chmod u+x b.txt chmod 777 a.txt 修改文件的所有者和所属组 ​ 修改所有者chown beifeng a.txt 修改所属组chgrp b ...

  9. 一套兼容win和Linux的PyTorch训练MNIST的算法代码(CNN)

    第一次,调了很久.它本来已经很OK了,同时适用CPU和GPU,且可正常运行的. 为了用于性能测试,主要改了三点: 一,每一批次显示处理时间. 二,本地加载测试数据. 三,兼容LINUX和WIN 本地加 ...

  10. Kotlin调用Java程序解析

    Kotlin跟Java是百分百兼容的,换言之,也就是它们俩是可以互操作的,也就是Java可以调Kotlin,Koltin可以调Java,所以下面来看一下在Kotlin中如何来调用Java代码: 咱们来 ...