IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> 调用华为云API获取token值 -> 正文阅读

[Python知识库]调用华为云API获取token值

目录

前言

一、API是什么??

二、API有什么用??

三、构造请求

1.请求URI

?2.请求方法

四、请求消息体

五、调试

?总结


前言

介绍调用IAM服务的获取用户Token如何调用API,该API获取用户的Token,Token可以用于调用其他服务时鉴权。

一、API是什么??

API(Application Programming Interface,应用程序编程接口)是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。

二、API有什么用??

API 的一个主要功能是提供通用功能集。 API同时也是一种中间件,为各种不同平台提供 数据 共享。 程序设计的实践中,编程接口的设计首先要使软件系统的职责得到合理划分。 良好的接口设计可以降低系统各部分的相互依赖,提高组成单元的内聚性,降低组成单元间的耦合程度,从而提高系统的可维护性和可扩展性。

三、构造请求

1.请求URI

我们日常调用api是使用一个URI地址

URI由如下部分组成:

{URI-scheme}://{Endpoint}/{resource-path}?{query-string}

https://iam.cn-north-1.myhuaweicloud.com/v3/auth/tokens

/v3/auth/tokens 是获取用户token的资源路径

参数描述
URI-scheme表示用于传输请求的协议,当前所有API均采用HTTPS协议。
Endpoint指定承载REST服务端点的服务器域名或IP,不同服务不同区域的Endpoint不同,您可以从地区和终端节点获取。
resource-path资源路径,也即API访问路径。从具体API的URI模块获取,例如“获取用户Token”API的resource-path为“/v3/auth/tokens”。
query-string查询参数,是可选部分,并不是每个API都有查询参数。查询参数前面需要带一个“?”,形式为“参数名=参数取值”,例如“?limit=10”,表示查询不超过10条数据。

? ? ? ? ? ? ? ? ? ? ? ? ??

?2.请求方法

POST https://iam.cn-north-1.myhuaweicloud.com/v3/auth/tokens

这里使用POST:请求服务器新增资源或执行特殊操作。

四、请求消息体

请求消息体通常以结构化格式(如JSON或XML)发出

需要指定:Content-Type: application/json? 定义请求体以json文件发出

其中username为用户名,domainname为用户所属的帐号名称,********为用户登录密码

username、domainname、******** 获取方法如下图所示:

1、华为云首页

2、 点击凭证

?3、API凭证

username:IAM用户名?
domainname:账号名

project:找到自己区域所属项目名称

?案例:

POST https://iam.cn-north-1.myhuaweicloud.com/v3/auth/tokens
Content-Type: application/json

{
    "auth": {
        "identity": {
            "methods": [
                "password"
            ],
            "password": {
                "user": {
                    "name": "username",   #IAM用户名
                    "password": "********",   #IAM密码
                    "domain": {
                        "name": "domainname"  #用户所属的帐号名称
                    }
                }
            }
        },
        "scope": {
            "project": {
                "name": "xxxxxxxxxxxxxxxxxx"   #所属项目名称
            }
        }
    }
}

五、调试

API Explorer中调试该接口。

也可通过下图方法找到

填写完用户密码后点击调试:

获取token成功:?

?总结

1、请求头 POST https://iam.cn-north-1.myhuaweicloud.com/v3/auth/tokens

2、请求体

{
? ? "auth": {
? ? ? ? "identity": {
? ? ? ? ? ? "methods": [
? ? ? ? ? ? ? ? "password"
? ? ? ? ? ? ],
? ? ? ? ? ? "password": {
? ? ? ? ? ? ? ? "user": {
? ? ? ? ? ? ? ? ? ? "name": "username", ? #IAM用户名
? ? ? ? ? ? ? ? ? ? "password": "********", ? #IAM密码
? ? ? ? ? ? ? ? ? ? "domain": {
? ? ? ? ? ? ? ? ? ? ? ? "name": "domainname" ?#用户所属的帐号名称
? ? ? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ? }
? ? ? ? ? ? }
? ? ? ? },
? ? ? ? "scope": {
? ? ? ? ? ? "project": {
? ? ? ? ? ? ? ? "name": "xxxxxxxxxxxxxxxxxx" ? #所属项目名称
? ? ? ? ? ? }
? ? ? ? }
? ? }
}

3、最后调试

  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2021-09-07 10:46:22  更:2021-09-07 10:47:05 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 14:55:34-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码