HTTP鉴权

易视云服务端API需要对每次接口访问进行身份验证,即每个请求都需要提供签名以验证用户身份,易视云API接口鉴权信息均在HTTP请求的Header中传输,Header字段描述如下:

Headers 含义 必选
X-EV-KEY AccessKey
X-EV-TIMESTAMP 时间戳
X-EV-SIGNATURE 计算后的签名串
X-EV-VERSION 算法版本,默认为1
X-EV-NONCE 随机数
X-EV-STAGE 默认为release,测试环境为test
X-EV-ACCEPT 参与运算的HEADERS,使用半角「,」分割,全部小写
X-EV-ACCEPTQS 参与运算的QueryString,使用半角「,」分割,全部小写
X-EV-ALGO hmac算法,枚举为: sha1, md5,默认sha1

申请安全凭证

在第一次使用易视云服务端API之前,服务使用者需要申请安全凭证,安全凭证包括AccessKey和SecretKey,即AK和SK,其中AK用于标识API调用者身份,SK是用于加密签名字符串和服务器端验证签名字符串的密钥。用户应严格保管其SK,避免泄露。

生成签名串

  • 生成待签名字符串
    • string_to_sign = HttpMethod + '\n' + query + '\n' + Headers
    • HttpMethod = HTTP请求方法(大写),例如GET POST PUT DELETE
    • query = key1 +'=' + value1 + '&' + key2 +'=' + value2 + '&' + ... + keyn +'=' + valuen。其中key1到keyn是经过字典排序的, value是utf-8再经过了url encode(rfc 3986)编码
    • Headers = HeaderKey1 + ":" + HeaderValue1 + "\n" +
        HeaderKey2 + ":" + HeaderValue2 + "\n" +
        ...
        HeaderKeyN + ":" + HeaderValueN + "\n"。其中HeaderKey1到HeaderKeyN都是上表中定义的Headers,且使用大写,即X-EV-开头的(不包含X-EV-SIGNATURE项),经过字典排序。
      
  • 计算签名
    • signature = hmac(string_to_sign,SecretKey)

错误码

服务端API接口访问返回json字符串中state不为0,说明接口访问出错,下表中列出的是鉴权错误码

state 错误描述
-1 未知错误
-2 系统错误
-3 参数错误
-4 应用不存在
-5 应用处于非正常状态
-6 鉴权参数错误
-7 鉴权失败

results matching ""

    No results matching ""