更新时间:2022-05-07 GMT+08:00
分享

调用API

获取API及文档

在调用API前,您需要向API提供者获取API的请求信息,包括访问域名、请求协议、请求方法、请求路径以及请求参数。

获取API

  • 从云市场购买。
  • 通过线下传递(如企业内部或者企业间合作)。

获取文档

  • 已发布到应用市场的API,通过云市场可以获取参考文档。
  • 未发布到应用市场的API,需要线下联系API提供方获取参考文档。
  • 如果API为云服务官方提供的服务,还可以在华为云帮助中心获取参考文档。

根据API使用的安全认证方式,还要获取相关的请求认证信息:

  • APP认证
    • 签名认证:向API提供者获取该API所授权应用的Key和Secret(或客户端的AppKey和AppSecret),以及用于调用API的SDK。
    • 简易认证:向API提供者获取该API所在应用的AppCode。
    • 其他认证:向API提供者获取该API所授权应用的Key和Secret(或客户端的AppKey和AppSecret)。
  • 华为IAM认证:通过云服务平台的帐号凭证(帐号和密码获取Token或者AK/SK)进行认证。如果使用AK/SK进行认证,还需要向API提供者获取用于调用API的SDK。
  • 自定义认证:向API提供者获取请求参数中要携带的自定义认证信息。
  • 无认证:无需认证信息。

调用API

  1. 配置请求地址相关参数。

    API调用场景

    API请求参数配置

    使用域名调用API

    使用服务分配的子域名或服务绑定的域名调用API,无需另外配置。

    使用IP调用DEFAULT分组的API

    专享版API允许使用IP地址调用DEFAULT分组下的API,无需另外配置。

    使用IP调用非DEFAULT分组的API

    • 专享版实例配置参数“app_route”已设置为“on”,允许通过IP访问API。
    • 不允许使用IP地址直接调用非DEFAULT分组下的API,需要在请求消息中添加Header参数“X-HW-ID”,参数值为API所授权的Key或客户端的AppKey。

  2. 配置认证参数。

    API认证方式

    API请求参数配置

    APP认证(签名认证)

    使用获取的SDK对API请求进行签名,具体请参考使用APP认证调用API

    APP认证(简易认证)

    在API请求中添加Header参数“X-Apig-AppCode”,参数值为获取API及文档中获取到的AppCode。具体请参考快速入门

    APP认证(app_api_key认证)

    • 专享版的实例配置参数“app_api_key”已设置为“on”,开启app_api_key认证。
    • 在API请求中添加Header或Query参数“apikey”,参数值为获取API及文档中获取到的Key或AppKey。

    APP认证(app_secret认证)

    • 专享版的实例配置参数“app_secret”已设置为“on”,开启app_secret认证,且“app_api_key”已设置为“off”,关闭app_api_key认证。
    • 在API请求中添加Header参数“X-HW-ID”,参数值为API所授权的Key或客户端的AppKey。
    • 在API请求中添加Header参数“X-HW-AppKey”,参数值为获取API及文档中获取到的Secret或AppSecret。

    APP认证(app_basic认证)

    • 专享版的实例配置参数“app_basic”已设置为“on”,开启app_basic认证。
    • 在API请求中添加Header参数“Authorization”,参数值为"Basic "+base64(appkey+":"+appsecret),其中appkey和appsecret分别为获取API及文档中获取到的Key和Secret(或AppKey和AppSecret)。

    APP认证(app_jwt认证)

    • 专享版的实例配置参数“app_jwt”已设置为“on”,开启app_jwt认证。
    • 在API请求中添加Header参数“Timestamp”,参数值为当前时间的Unix时间戳。
    • 在API请求中添加Header参数“Authorization”,参数值为sha256(appkey+appsecret+timestamp),其中appkey和appsecret分别为获取API及文档中获取到的Key和Secret(或AppKey和AppSecret),timestamp为当前时间的Unix时间戳。

    华为IAM认证(Token认证)

    先获取云服务平台的认证Token,然后在API请求中携带Token进行认证,具体请参考Token认证

    华为IAM认证(AK/SK认证)

    调用API时,使用获取的SDK对API请求进行签名,具体请参考AK/SK认证

    自定义认证

    在API请求参数中携带认证信息进行认证。

    无认证

    无需认证,可直接调用API。

分享:

    相关文档

    相关产品

close