Python之API:基于python语言调用华为云API(华为网站)实现特定功能

简介: Python之API:基于python语言调用华为云API(华为网站)实现特定功能

详细步骤图文教程


1、申请服务


申请地址:https://www.huaweicloud.com/product/face.html


image.png


2、开通服务

image.png







3、构造请求


https://support.huaweicloud.com/api-face/face_02_0054.html


       请求URI由如下部分组成:{URI-scheme} :// {Endpoint} / {resource-path} ? {query-string}


参数

说明

URI-scheme

传输请求的协议,当前所有API均采用HTTPS协议。

Endpoint

承载REST服务端点的服务器域名或IP,不同服务在不同区域时,对应Endpoint不同,可以从终端节点中获取。

例如IAM服务在“华北-北京一”区域的Endpoint为“iam.cn-north-1.myhuaweicloud.com”。

resource-path

资源路径,即API访问路径。从具体API的URI模块获取,例如“获取用户Token”API的resource-path为“/v3/auth/tokens”。

query-string

查询参数,可选,查询参数前面需要带一个“?”,形式为“参数名=参数取值”,例如“limit=10”,表示查询不超过10条数据。

       例如您需要获取“华北-北京一”区域的Token,则需使用“华北-北京一”区域的Endpoint(iam.cn-north-1.myhuaweicloud.com),并在获取用户Token的URI部分找到resource-path(/v3/auth/tokens),拼接起来如下所示。

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


image.png



     请求方法为 “POST”,则其请求为:POST https://iam.cn-north-1.myhuaweicloud.com/v3/auth/tokens


1、请求消息头:附加请求头字段,如指定的URI和HTTP方法所要求的字段。例如定义消息体类型的请求头“Content-Type”,请求鉴权信息等。


2、请求消息体:请求消息体通常以结构化格式发出,与请求消息头中Content-type对应,传递除请求消息头之外的内容。若请求消息体中参数支持中文,则中文字符必须为UTF-8编码。

每个接口的请求消息体内容不同,也并不是每个接口都需要有请求消息体(或者说消息体为空),GET、DELETE操作类型的接口就不需要消息体,消息体具体内容需要根据具体接口而定。



4、认证鉴权


https://support.huaweicloud.com/api-face/face_02_0004.html


调用接口有如下两种认证方式,您可以选择其中一种进行认证鉴权。


Token认证:通过Token认证通用请求。

AK/SK认证:通过AK(Access Key ID)/SK(Secret Access Key)加密调用请求。

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

Content-Type: application/json

X-Auth-Token: ABCDEFJ....



5、返回结果


https://support.huaweicloud.com/api-face/face_02_0005.html


请求发送以后,您会收到响应,包含:状态码、响应消息头和响应消息体。


状态码:状态码是一组从1xx到5xx的数字代码,状态码表示了请求响应的状态,完整的状态码列表请参见状态码。

对于获取用户Token接口,如果调用后返回状态码为“201”,则表示请求成功。


响应消息头:对应请求消息头,响应同样也有消息头,如“Content-type”。


响应消息体:响应消息体通常以结构化格式返回,与响应消息头中Content-type对应,传递除响应消息头之外的内容。


相关文章
|
8天前
|
存储 Java C#
使用Python实现简易的用户登录验证功能
这篇文章将向你展示如何使用Python语言进行程序设计,实现一个简易的用户登录验证功能。 该功能允许用户输入由字母和数字任意组合而成的用户名和密码,并通过while循环不断地提示用户输入,直到凭证正确为止。所有凭证信息将被存储在一个字典中,以便进行匹配验证。
|
17天前
|
Linux 开发工具 Python
初学者从无到有的Python语言如何入门,这份Python学习路线赶紧带走_python 从无到(1)
初学者从无到有的Python语言如何入门,这份Python学习路线赶紧带走_python 从无到(1)
初学者从无到有的Python语言如何入门,这份Python学习路线赶紧带走_python 从无到(1)
|
17天前
|
开发工具 Python
2024年最新【Python】关于Python打开文件&&上下文管理器(1),2024华为Python面试真题解
2024年最新【Python】关于Python打开文件&&上下文管理器(1),2024华为Python面试真题解
2024年最新【Python】关于Python打开文件&&上下文管理器(1),2024华为Python面试真题解
|
19天前
|
安全 Java C语言
【Python 的内存管理机制专栏】Python 内存管理机制与底层实现:C 语言视角的剖析
【5月更文挑战第18天】Python的内存管理涉及对象分配、引用计数和垃圾回收。对象分配类似C的动态内存,但更自动化。引用计数跟踪对象引用,计数为0时回收。垃圾回收机制自动清理不再使用的对象,避免内存泄漏。这种高效自动化管理让开发者能专注于业务逻辑,而底层实现的理解有助于解决特殊问题和优化性能。
【Python 的内存管理机制专栏】Python 内存管理机制与底层实现:C 语言视角的剖析
|
22天前
|
IDE Java 开发工具
讨论 Python 中泛型(或类似泛型的功能)的优点和缺点
【5月更文挑战第8天】Python虽无显式泛型系统,但可通过类型注解和工具实现类似功能。优点包括提升代码可读性、静态类型检查、更好的IDE支持、灵活性和可逐渐引入。缺点涉及运行时性能开销、学习成本、非强制性及与旧代码集成问题。适当使用工具和实践可管理这些挑战。
23 2
|
22天前
|
弹性计算 运维 Shell
设置Python 支持自动命令补齐功能
【4月更文挑战第29天】
14 0
|
22天前
|
弹性计算 运维 Shell
设置 Python 支持自动命令补齐功能
【4月更文挑战第29天】
8 1
|
22天前
|
数据采集 机器学习/深度学习 供应链
python基于评论情感分析和回归、arima销量预测的购物网站选品
python基于评论情感分析和回归、arima销量预测的购物网站选品
|
22天前
|
存储 搜索推荐 开发者
django-haystack,具有全文搜索功能的 Python 库!
django-haystack,具有全文搜索功能的 Python 库!
34 0
|
22天前
|
缓存 监控 Python
Python中的装饰器:一种强大的功能增强工具
装饰器是Python中一个独特且强大的功能,它允许在不修改原有函数或类代码的情况下,为其添加额外的功能或行为。本文将深入探讨Python装饰器的原理、用法以及在实际开发中的应用场景,帮助读者更好地理解和应用这一技术。