检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
打开终端,输入以下命令打开环境变量配置文件。 vi ~/.bashrc 设置环境变量,保存文件并退出编辑器。 export HUAWEICLOUD_SDK_AK="已获取AK值" export HUAWEICLOUD_SDK_SK="已获取SK值" 输入以下命令使配置文件生效。 source ~/
IDEA,选择菜单“File > New > Project”。 弹出“New Project”对话框,“Name”填写SDK压缩包内文件夹的名称,“Location”填写该文件夹的解压路径,“Language”选择“Go”,单击“Create”。 图2 Go 完成工程创建后,目录结构如下。 图3 新建工程go的目录结构
type”选择“Script path”,“Target”选择工程下的“backend_signature.py”文件,单击“OK”,完成工程配置。 校验后端签名示例 示例演示如何编写一个基于Flask的服务器,作为API的后端,并且实现一个wrapper,对API网关(即API管理)的请求做签名校验。
backend-signature\ 后端签名示例工程 csharp.sln 工程文件 licenses\license-referencesource 第三方库license文件 打开工程 双击SDK包中的“csharp.sln”文件,打开工程。工程中包含如下3个项目: apigateway-si
导入API 功能介绍 导入API。导入文件内容需要符合swagger标准规范,API网关自定义扩展字段请参考《API网关用户指南》的“导入导出API:扩展定义”章节。 调用方法 请参见如何调用API。 URI POST /v2/{project_id}/apigw/instanc
导出API 功能介绍 导出分组下API的定义信息。导出文件内容符合swagger标准规范,API网关自定义扩展字段请参考《API网关用户指南》的“导入导出API:扩展定义”章节。 调用方法 请参见如何调用API。 URI POST /v2/{project_id}/apigw/i
异步导入API 功能介绍 导入API。导入文件内容需要符合swagger标准规范,API网关自定义扩展字段请参考《API网关用户指南》的“导入导出API:扩展定义”章节。 调用方法 请参见如何调用API。 URI POST /v2/{project_id}/apigw/insta
异步导出API 功能介绍 导出分组下API的定义信息。导出文件内容符合swagger标准规范,API网关自定义扩展字段请参考《API网关用户指南》的“导入导出API:扩展定义”章节。 调用方法 请参见如何调用API。 URI POST /v2/{project_id}/apigw
在弹窗中单击“New Window”。 把示例工程中的“src”和“libs”文件夹复制到apig-sdk-maven-demo工程下。 配置新建Maven工程的pom.xml文件。 在左侧展开工程文件,双击“pom.xml”将以下内容复制粘贴替换原有内容。 打包时依赖包需要下载安装到本地仓库进行打包。
打开终端,输入以下命令打开环境变量配置文件。 vi ~/.bashrc 设置环境变量,保存文件并退出编辑器。 export HUAWEICLOUD_SDK_AK="已获取AK值" export HUAWEICLOUD_SDK_SK="已获取SK值" 输入以下命令使配置文件生效。 source ~/
打开终端,输入以下命令打开环境变量配置文件。 vi ~/.bashrc 设置环境变量,保存文件并退出编辑器。 export HUAWEICLOUD_SDK_AK="已获取AK值" export HUAWEICLOUD_SDK_SK="已获取SK值" 输入以下命令使配置文件生效。 source ~/
实施步骤 前提条件 客户端与服务端均为gRPC类型。 服务端已定义proto文件,即在proto文件中定义API的Request和Response。proto文件是用于定义数据结构和服务接口的文件,通常在gRPC中使用。它基于Protobuf语言,用于描述数据的结构和交互方式,充当客户端和服务端之间通信的合同。
请求进行安全认证。 后端自定义认证:指API的后端服务使用自定义的认证函数,对来自APIG转发的后端服务请求进行安全认证。 本章节主要介绍如何创建一个前端自定义认证。您需要先创建一个函数后端作为认证函数,并在自定义认证中使用该函数后端作为认证后端。 图1 前端自定义认证示意图 使
IDEA,在菜单栏选择“File > New > Project from Existing Sources”,选择解压后的“apigateway-backend-signature-demo\pom.xml”文件,单击“OK”。 图1 Select File or Directory to Import
导入API到新分组 功能介绍 通过导入的swagger文件创建新分组和新API。swagger文件支持json以及yaml格式。 URI HTTP/HTTPS请求方法以及URI如下表所示。 表1 请求方法 URI POST /v1.0/apigw/openapi URI中的参数说明如下表所示。
导入API到新分组 功能介绍 通过导入的swagger文件创建新分组和新API。swagger文件支持json以及yaml格式。 URI HTTP/HTTPS请求方法以及URI如下表所示。 表1 请求方法 URI POST /v1/{project_id}/apigw/insta
导入API到已有分组 功能介绍 导入swagger格式的文件, 在已有分组中创建或更新API。swagger文件支持json以及yaml格式。 URI HTTP/HTTPS请求方法以及URI如下表所示。 表1 请求方法 URI PUT /v1.0/apigw/openapi?group_id={0}&mode={1}
导入API到已有分组 功能介绍 导入swagger格式的文件, 在已有分组中创建或更新API。swagger文件支持json以及yaml格式。 URI HTTP/HTTPS请求方法以及URI如下表所示。 表1 请求方法 URI PUT /v1/{project_id}/apigw
API签名认证的内容是否包括Body体? 包括。除了几个必选的请求头部参数,Body体也是签名要素之一。例如有一个使用POST方法上传文件的API,那么在签名过程中,会取这个文件的hash值,参与生成签名信息。 关于签名的详细指导,可参考:签名认证算法详解。 父主题: API认证
签名认证算法使用有问题,客户端计算的签名结果与API网关计算的签名结果不同。 解决方法 下载js版本,查看可视化签名SDK,获取签名字符串。 解压压缩包,使用浏览器打开“demo.html”文件。 获取x-sdk-date值,x-sdk-date值必须与当前时间相差在15min以内。 在键盘中按下“F12”,并在页面中选择“Sources