Xác thực
Tìm hiểu cách xác thực yêu cầu API.
Xác thực
Tất cả yêu cầu đến Traceline API phải bao gồm API key trong header X-API-Key. API key được tạo từ bảng điều khiển.
X-API-Key: trl_live_a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4Định dạng khóa
API key tuân theo định dạng nhất quán để dễ nhận dạng:
trl_live_— Tất cả khóa bắt đầu bằng trl_live_.- Phần thân — 32 ký tự thập lục phân được tạo bằng bộ sinh số ngẫu nhiên an toàn.
- Ví dụ đầy đủ —
trl_live_a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4
Lưu trữ & bảo mật khóa
API key được băm bằng SHA-256 trên máy chủ. Khóa văn bản gốc chỉ hiển thị một lần khi tạo.
Thực hành bảo mật tốt nhất
- Lưu khóa trong biến môi trường, không hardcode.
- Thêm file .env vào .gitignore.
- Xoay vòng khóa định kỳ và thu hồi khóa không sử dụng.
- Sử dụng khóa riêng cho phát triển và sản xuất.
Ví dụ yêu cầu
Tất cả yêu cầu đến Traceline API phải bao gồm API key trong header X-API-Key. API key được tạo từ bảng điều khiển.
cURL
curl -X POST https://api.trace-line.site/v1/palm/analyze \
-H "X-API-Key: trl_live_YOUR_KEY_HERE" \
-H "Content-Type: application/json" \
-d '{"image": "<base64-encoded-image>"}'Python
import os
import requests
import base64
api_key = os.environ["TRACELINE_API_KEY"]
with open("palm.jpg", "rb") as f:
image_b64 = base64.b64encode(f.read()).decode()
response = requests.post(
"https://api.trace-line.site/v1/palm/analyze",
headers={
"X-API-Key": api_key,
"Content-Type": "application/json",
},
json={"image": image_b64},
)
print(response.json())JavaScript
import { readFileSync } from "fs";
const apiKey = process.env.TRACELINE_API_KEY;
const image = readFileSync("palm.jpg").toString("base64");
const res = await fetch(
"https://api.trace-line.site/v1/palm/analyze",
{
method: "POST",
headers: {
"X-API-Key": apiKey,
"Content-Type": "application/json",
},
body: JSON.stringify({ image }),
}
);
const data = await res.json();
console.log(data);