
404 Bad Request using Hugging Face Spaces API
快速结论:该报错通常在使用 Gradio 客户端访问 Hugging Face Spaces 时触发,原因是 Hub 端对 repo 名称中的 URL 编码斜杠处理异常。优先升级到 Gradio 6.20.0 及以上版本。
问题场景
用户在 https://ai-gov.pl 上使用 Gradio 6.1.0 的 Web 组件时,通过 Hugging Face Spaces API 获取子域名信息时触发 400 Bad Request 错误。
报错原文
Request: `GET https://huggingface.co/api/spaces/by-subdomain/jglowa-ai-gov-pl`
Response: `{"error":"Invalid repo name: jglowa/ai-gov.pl - repo name includes an url-encoded slash"}`
原因分析
问题最初是 Hub 端的 bug,导致 Space repo 名称中的点号 . 被错误解析为 URL 编码斜杠。该 bug 已在 Hub 侧修复。但后续 Hub 端有一次安全相关的变更,需要 Gradio 相应地更新以保持流程正常工作。
环境排查
- 确认 Gradio 版本(报错时使用 6.1.0)
- 确认 Hugging Face Space 的 URL 格式(本例中为
https://jglowa-ai-gov-pl.hf.space) - 检查项目是否使用了 Gradio client JavaScript 的
spaces.ts辅助函数
解决步骤
- 升级 Gradio:将 Gradio 更新到 6.20.0 或更高版本,该版本已包含针对 Hub 侧安全变更的适配。
- 确认 Hub 状态:如果升级后问题仍然存在,请联系 Hugging Face 确认 Hub API 是否恢复正常。
- 在 Issue 讨论中确认该问题已被修复并关闭,但保留重新开启的权利。
验证方法
重新启动 Gradio 应用并尝试访问之前的 Space URL,观察是否不再返回 400 错误。如果 API 调用成功返回正常 Space 信息,则问题解决。



