响应结构
读取错误对象
请求失败时,JSON 响应中的 status 为 false。应用逻辑应使用数字形式的errno,而 errmsg 可用于日志或便于阅读的诊断信息。
JSON · 错误示例
{
"status": false,
"errno": 94,
"errmsg": "invalid or missing key"
}实现原则:请依据
errno 分支处理,而不要依赖 errmsg的确切文案。即使说明文字日后调整,集成逻辑仍能保持稳定。完整参考
GenderAPI 错误代码
以下数值与 GenderAPI 当前公开文档一致。再次发送请求前,请先修复对应原因。
errno50
access denied请求来自未经授权的 IP 地址或来源页面。
检查并调整该 API 密钥设置的访问限制。
errno90
invalid country codecountry 参数不是受支持的 ISO 3166-1 alpha-2 国家代码。
重试前验证国家代码并将其规范化。
errno91
name not set || email not set || username not set请求缺少必填的 name、email 或 username 参数。
根据所调用的端点补充对应的必填输入。
errno92
too many names || too many emails || too many usernames请求超过批量上限:100 个姓名、50 个电子邮箱或 50 个用户名。
将输入拆分为更小的批次后分别提交。
errno93
query limit reached该 API 密钥已无剩余额度。
暂停查询任务,并为账户补充额度。
errno94
invalid or missing keyAPI 密钥缺失、无效或无法找到。
检查凭据注入流程,并在服务器端使用有效密钥。
errno99
API key has expired与该 API 密钥关联的套餐已过期。
续订套餐后再发送新的查询。
处理建议
安全失败,避免盲目重试
先验证输入
在请求到达 API 前,拦截缺失输入、无效国家代码和超过上限的批次。
保护访问凭据
API 密钥应仅保存在服务器端,并从应用日志、浏览器输出和支持截图中移除或遮盖。
有选择地重试
这些错误需要修正请求或处理账户问题;原样重复同一请求无法解决问题。
TypeScript · 响应守卫
type GenderApiError = {
status: false;
errno: number;
errmsg: string;
};
if (response.status === false) {
handleGenderApiError(response.errno, response.errmsg);
}妥善保护诊断信息
在日志中记录错误编号和内部请求标识,但绝不要写入 API 密钥。面向用户显示简短、可执行的提示,避免暴露凭据或内部请求数据。
文档阅读完成