Skip to content
On this page

Prepare Upload Token

获取资源上传凭证,用于后续上传操作

Endpoint

GET https://openapi.kujiale.com/v2/aholo/upload/token

Authentication

需要签名认证 + appuid 参数。详见接口鉴权规则

Request

Query Parameters

ParameterRequiredTypeDescription
appuidYesString第三方用户ID

Response

json
{
  "c": "0",
  "d": {
    "ousToken": "eyJhbGciOiJIUzI1NiIs...",
    "globalDomain": "ous-cn-hangzhou.kujiale.com",
    "blockSize": 1048576
  },
  "m": null,
  "f": ""
}

Fields

FieldTypeDescription
cString状态码,"0" 表示成功
dObject返回数据
d.ousTokenString上传 Token,10分钟有效期。后续请求放入 Header: ous-token-v2: {ousToken}
d.globalDomainString上传服务域名,后续上传接口使用此域名
d.blockSizeInt分片阈值(字节),超过此大小需分片上传

Usage

获取 Token 后,用于上传流程:

1. 调用本接口获得 ousToken + globalDomain
2. 使用 globalDomain 作为后续上传接口的 Base URL
3. 所有上传接口 Header 添加: ous-token-v2: {ousToken}

Code Examples

Python

python
import requests

APPUID = "your_appuid"
BASE_URL = "https://openapi.kujiale.com/v2/aholo"

def get_upload_token():
    """获取上传凭证"""
    
    response = requests.get(
        f"{BASE_URL}/upload/token",
        params={"appuid": APPUID}
        # 注意:实际需添加签名认证
    )
    
    if response.json()["c"] != "0":
        raise Exception("获取Token失败")
    
    data = response.json()["d"]
    
    return {
        "ous_token": data["ousToken"],
        "global_domain": data["globalDomain"],
        "block_size": data["blockSize"]
    }

# 使用示例
upload_info = get_upload_token()
print(f"ousToken: {upload_info['ous_token']}")
print(f"上传域名: {upload_info['global_domain']}")
print(f"分片阈值: {upload_info['block_size']} bytes ({upload_info['block_size']/1024/1024}MB)")

JavaScript

javascript
const APPUID = 'your_appuid';
const BASE_URL = 'https://openapi.kujiale.com/v2/aholo';

async function getUploadToken() {
  const response = await fetch(
    `${BASE_URL}/upload/token?appuid=${APPUID}`
  );
  
  const data = await response.json();
  
  if (data.c !== '0') {
    throw new Error('获取Token失败');
  }
  
  return {
    ousToken: data.d.ousToken,
    globalDomain: data.d.globalDomain,
    blockSize: data.d.blockSize
  };
}

// 使用示例
const uploadInfo = await getUploadToken();
console.log(`上传域名: ${uploadInfo.globalDomain}`);

cURL

bash
curl -X GET "https://openapi.kujiale.com/v2/aholo/upload/token?appuid=your_appuid"

Notes

  • Token 有效期: 10分钟,过期需重新获取
  • 签名认证: 实际使用需添加签名,参考官方鉴权文档
  • 分片上传: 文件大小超过 blockSize 时需使用分片上传流程

Error Codes

CodeDescription
-1调用失败

下一步: Upload File

基于 Marble API 文档结构