convertor/docs/api/overview.md
Your Name da856d89ff feat(i18n): add multilingual support with translations for English, Japanese, and Simplified Chinese
- Create README.md for internationalization (i18n) documentation
- Add English translation for main README and quick start guide
- Add Japanese translation for main README
- Add Simplified Chinese translation for main README
- Introduce sample Docker Compose configurations for various deployment scenarios
- Implement CI/CD documentation for testing and deployment workflows
- Establish end-to-end testing guidelines and strategies
- Create test strategy documentation outlining unit, integration, and E2E tests
2026-01-23 14:32:27 +08:00

2.5 KiB
Raw Blame History

API 總覽

ConvertX-CN 提供選用的 API Server支援 REST 和 GraphQL 兩種 API 介面。


功能特色

  • 🔐 JWT 認證:安全的 API 存取控制
  • 🌐 REST + GraphQL:雙協議支援
  • 🔍 智慧建議:轉換失敗時推薦替代引擎
  • 🛠️ 20+ 轉換引擎:與 Web UI 共用完整轉換器

快速啟用

API Server 是選用功能,不影響 Web UI 使用。

啟用方式

docker compose --profile api up -d

服務端口

服務 端口 說明
Web UI 3000 網頁介面
API Server 3001 REST & GraphQL

API 端點

REST API

  • Base URL: http://localhost:3001/api/v1
  • Content-Type: application/jsonmultipart/form-data

GraphQL API

  • Endpoint: http://localhost:3001/graphql
  • Playground: http://localhost:3001/graphql(開發模式)

認證

所有 API 請求(除健康檢查外)都需要 JWT Bearer Token

Authorization: Bearer <your-jwt-token>

Token 結構

{
  "sub": "user-id",
  "exp": 1234567890,
  "iat": 1234567890,
  "email": "user@example.com",
  "roles": ["user"]
}

API Server 只負責驗證 JWT不負責產生 JWT。Token 應由獨立的認證服務產生。


環境變數

變數 說明 預設值
API_HOST 監聽地址 0.0.0.0
API_PORT 監聽埠 3001
JWT_SECRET JWT 驗證密鑰 (需自行設定)
UPLOAD_DIR 上傳目錄 ./data/uploads
OUTPUT_DIR 輸出目錄 ./data/output
MAX_FILE_SIZE 最大檔案大小 104857600

快速範例

健康檢查

curl http://localhost:3001/health

回應:

{
  "status": "healthy",
  "version": "0.1.0",
  "timestamp": "2026-01-23T10:30:00Z"
}

列出引擎

curl -H "Authorization: Bearer <token>" \
  http://localhost:3001/api/v1/engines

轉換檔案

curl -X POST \
  -H "Authorization: Bearer <token>" \
  -F "file=@document.docx" \
  -F "engine=libreoffice" \
  -F "output_format=pdf" \
  http://localhost:3001/api/v1/convert

相關文件