跳转到内容

使用 Bearer Token 认证

ZhiFlo API 使用 Bearer Token 认证。每个请求都把 Token 放在 Authorization 请求头中,不要放在 URL、请求正文或日志里。

项目
认证方式 Bearer Token
请求头名称 Authorization
请求头值 Bearer <YOUR_ZHIFLO_TOKEN>
POST 内容类型 application/json

原始 HTTP 请求的认证部分如下:

Authorization: Bearer <YOUR_ZHIFLO_TOKEN>
Content-Type: application/json

Bearer 后有一个空格。<YOUR_ZHIFLO_TOKEN> 是占位符,使用时由环境变量或客户端凭据存储提供真实 Token。

先通过隐藏输入设置当前终端变量:

终端窗口
read -s ZHIFLO_API_TOKEN
export ZHIFLO_API_TOKEN

通过标准输入把请求头交给 curl

终端窗口
curl --silent --show-error \
--config - \
"https://api.zhiflo.com/v1/models" <<CURL_CONFIG
header = "Authorization: Bearer ${ZHIFLO_API_TOKEN}"
CURL_CONFIG

这样展开后的 Token 不会出现在 curl 的命令行参数中。

先通过安全输入设置当前终端变量:

终端窗口
$secureToken = Read-Host "Paste your ZhiFlo Token" -AsSecureString
$env:ZHIFLO_API_TOKEN = [System.Net.NetworkCredential]::new("", $secureToken).Password

再创建请求头:

终端窗口
$headers = @{ Authorization = "Bearer $env:ZHIFLO_API_TOKEN" }

关闭终端后,这些临时环境变量会消失。

  • 命令行工具:使用当前进程环境变量或工具自己的凭据存储。
  • 桌面客户端:只粘贴到标为 API KeyAPI TokenToken 的凭据字段。
  • 服务器程序:使用部署环境的 Secret 管理功能,不写进源码或普通配置文件。

不要把 Token 放进 URL 查询参数。URL 可能进入浏览器历史、代理记录和访问日志。

  1. Token 是否复制完整,前后是否有空格或换行;
  2. 请求头是否正好为 Authorization: Bearer ...
  3. Token 是否过期或已撤销;
  4. 客户端是否把 Token 放进了另一个认证字段。

如果怀疑泄露,先撤销旧 Token,再按 Token 管理 创建新值。下一步:查看 完整错误对照