功能描述

在使用 RESTful API 前,你需要通过 HTTP 基本认证。本文介绍如何使用 Agora 提供的客户 ID 和客户密钥生成一个 Credential (使用 Base64 算法编码),并在 HTTP 请求头部的 Authorization 字段中填入该 Credential。

操作步骤

  1. 登录 Console,点击右上角账户名,进入下拉菜单 RESTful API 页面。

  2. 点击下载,即可获取客户 ID客户密钥

    • 客户 ID 和客户密钥仅用于访问 RESTful API。客户密钥只能下载一次,下载后将不在控制台保存,请妥善保管。
    • 当使用水晶球内嵌功能时,你需要联系 sales@agora.io 获取水晶球内嵌的客户 ID 与客户密钥进行 HTTP 基本认证。
  3. 在请求认证的代码中,填入客户 IDcustomerId)和客户密钥customerSecret),生成一个 Credential (使用 Base64 算法编码),并在 HTTP 请求头部的 Authorization 字段中填入该 Credential。请参考下列示例代码:

    请在服务端进行 HTTP 基本认证,否则会有数据泄露的风险。
    • PHP

      // 填入客户 ID(customerId)和客户密钥(customerSecret),计算 base64Credentials(使用 Base64 算法编码)。
      $base64Credentials = base64_encode("customerId:customerSecret");
      // 在 HTTP 请求头部的 Authorization 字段中填入 base64Credentials。
      $arr_header = "Authorization: Basic " . $base64Credentials;
    • Java

      // 填入客户 ID(customerId)和客户密钥(customerSecret),计算 plainCredentials。
      String plainCredentials = "customerId:customerSecret";
      // 填入 plainCredentials,计算 base64Credentials(使用 Base64 算法编码)。
      String base64Credentials = new String(Base64.encodeBase64(plainCredentials.getBytes()));
      
      Request request = new Request.Builder()
      ...
      // 在 HTTP 请求头部的 Authorization 字段中填入 base64Credentials。
      .addHeader("Authorization", "Basic " + base64Credentials)
      ...
    • Swift

      // 填入客户 ID(customerId)和客户密钥(customerSecret),计算 loginString。
      let username = "customerId"
      let password = "customerSecret"
      let loginString = String(format: "%@:%@", username, password)
      // 填入 loginString,计算 loginData。
      let loginData = loginString.data(using: String.Encoding.utf8)!
      // 填入 loginData,计算 base64Credentials(使用 Base64 算法编码)。
      let base64Credentials = loginData.base64EncodedString()
      
      ...
      // 在 HTTP 请求头部的 Authorization 字段中填入 base64Credentials。
      let headers = ["Authorization", "Basic " + base64Credentials]
      ...
  4. 认证成功后,你可以使用下列产品的 RESTful API: