codatta-frontier-sdk
v0.1.4
Published
Codatta Frontier SDK - API client for Codatta Frontier platform
Readme
Codatta Frontier SDK
Codatta Frontier 平台的 API 客户端 SDK。
安装
npm install codatta-frontier-sdk注意:
axios是 peerDependency,请确保项目中已安装axios >= 1.0.0。
使用
import { FrontierSDK } from 'codatta-frontier-sdk'
const sdk = new FrontierSDK()
// 获取任务详情
const taskDetail = await sdk.getTaskDetail('task-id')
// 获取任务列表
const taskList = await sdk.getTaskList({
frontier_id: 'frontier-id',
page_num: 1,
page_size: 10
})
// 提交任务
const result = await sdk.submitTask('task-id', { field: 'value' })
// 获取提交列表
const submissions = await sdk.getSubmissionList({
page_num: 1,
page_size: 10,
frontier_id: 'frontier-id'
})
// 获取 Frontier 信息
const frontierInfo = await sdk.getFrontierInfo('frontier-id')
// 获取提交详情
const submissionDetail = await sdk.getSubmissionDetail('submission-id')
// 上传文件(支持进度回调)
const uploadResult = await sdk.uploadFile(file, (event) => {
console.log(`Upload progress: ${Math.round((event.loaded * 100) / (event.total ?? 1))}%`)
})API
new FrontierSDK()
创建 SDK 实例。无需传入任何参数,SDK 内部自动处理:
- Token: 从
cookie(auth) 或localStorage(auth) 中自动获取 - Channel: 根据
userAgent/location.hash自动判断(App 或 Web) - Device: 根据
userAgent自动判断(移动端或 PC)
方法
| 方法 | 说明 |
|------|------|
| getTaskDetail(taskId) | 获取任务详情 |
| submitTask(taskId, data) | 提交任务数据 |
| getTaskList(params) | 获取任务列表(分页) |
| getSubmissionList(params) | 获取提交列表(分页) |
| getFrontierInfo(frontierId) | 获取 Frontier 详情 |
| getSubmissionDetail(submissionId) | 获取提交详情 |
| uploadFile(file, onProgress?) | 上传文件 |
构建
npm run build输出 ESM (dist/index.mjs) 和 CJS (dist/index.cjs) 以及类型声明文件。
