资讯动态

730+ 免费公开API清单:public-api-lists 实用指南

发布时间:2026/9/11 3:05:31 来源:尧图企业网站定制
730 免费公开API清单public-api-lists 实用指南【免费下载链接】public-api-listsA curated list of free public APIs — searchable, community-maintained, with a free JSON API.项目地址: https://gitcode.com/GitHub_Trending/pu/public-api-listspublic-api-lists 是一份按 48 个分类整理的免费公开 API 清单覆盖天气、金融、地理编码、政府数据等领域。每条 API 都用统一表格字段描述认证方式、HTTPS 与 CORS 支持情况适合需要在侧边项目、教学演示或生产应用中快速找到可用数据接口的开发者。它实际解决了什么问题做小项目时找数据接口通常要经历这几步搜某类免费 API、逐个打开服务商官网、对比免费额度、注册拿密钥、写代码试探接口是否还活着。这份清单把前四步压缩成一次表格查询筛选成本同一需求往往有多个候选如汇率转换有十余个条目清单用统一字段横向排列无需在多个官网之间跳转。调用前提前端能否直连CORS、是否要注册拿密钥Auth、是否支持 HTTPS在写第一行代码前就能从表格里读出减少写了才发现调不通的返工。一次性需求如果只是课堂演示或脚本可以专挑Auth为No的条目跳过注册流程。它解决的是发现与评估环节不解决接口本身的质量问题——免费服务的可用性仍需自行验证这一点后文会展开。48 类清单是怎么组织的整个项目的主内容就是 README.md。它按固定模板组织文件头部有一个 Index 锚点导航列出全部 48 个分类Animals、Anime、Cryptocurrency、Geocoding、Weather 等点击后跳转到对应小节。每个分类是一张 5 列 Markdown 表格条目按字母序排列小节末尾有Back to Index回跳链接。若一个 API 跨多个分类贡献指南要求按其主要服务归类例如 Instagram 归入 Social 而非 Photography。每行条目的字段规范在 .github/CONTRIBUTING.md 中定义取值是封闭枚举字段含义合法取值API名称 官网链接—Description一句话描述末尾不得加标点—Auth认证方式No/apiKey/OAuth/X-Mashape-KeyHTTPS是否支持 HTTPSYes/NoCORS是否允许跨域直连Yes/No/Unknown仓库其余模块各司其职模块路径作用主清单README.md48 个分类表格唯一数据源贡献指南.github/CONTRIBUTING.md条目格式与 CI 校验规则JSON 构建脚本.github/scripts/build_api.py把 README 解析为结构化 JSON校验与链接检查.github/scripts/validate_pr.pyPR 格式自动校验CI 工作流.github/workflows/格式校验、定期链接检查、静态部署两个核心机制枚举字段与自动化校验机制一认证字段是枚举不是说明文。这是整份清单最有信息量的设计。对当前 README 表格逐行统计认证方式分布如下Auth 取值条目数典型含义No371无需任何凭据可直接调用apiKey346需注册获取密钥/令牌OAuth77需用户授权流程X-Mashape-Key4需按指定 Header 传密钥合计798—超过四成条目可直接调用。选型时可以按下面的路径决策列表里SerpApi就是典型的apiKey条目搜索抓取服务密钥由服务商颁发。机制二清单可被程序消费。.github/scripts/build_api.py 用正则解析 README 表格生成all.json全量、categories.json分类计数、stats.json统计及每类一个 JSON 文件通过静态站点托管为免费的 JSON API。这意味着你可以先按分类或认证类型程序化过滤再人工复核而不是从头翻一份 800 行的表格。机制三提交前自动把关。每个 PR 由 CI 校验5 列表格格式、枚举取值、字母序位置、与现有条目去重、描述无结尾标点、仅允许追加删除需cleanup标签、单个 PR 最多 5 条新条目且跨 3 个分类。这些约束解释了为什么这份清单的字段质量比较一致——不合规的提交进不来。跟一个真实任务走一遍在页面显示城市当前温度任务做一个小页面显示指定城市的实时温度。选Open-MeteoWeather 分类Auth: No、HTTPS: Yes、CORS: Yes全程无需注册。第一步定位。打开 README.md 的 Weather 小节横向比较同分类里 OpenWeatherMap 需要apiKey且不支持 HTTPS而 Open-Meteo 三项条件都满足前端直连。第二步验证。用 curl 确认响应结构curl -s https://api.open-meteo.com/v1/forecast?latitude39.9longitude116.4currenttemperature_2m # 返回 {latitude:39.9,...,current:{temperature_2m:26.4,...}}字段名、单位、是否分页都以实际响应为准而不是只看清单一句话描述。第三步集成。确认 CORS 支持后前端直连即可async function currentTemp(lat, lon) { const res await fetch( https://api.open-meteo.com/v1/forecast?latitude${lat}longitude${lon}currenttemperature_2m ); if (!res.ok) throw new Error(HTTP ${res.status}); return (await res.json()).current.temperature_2m; }这个流程——同分类内比字段、curl 验结构、再写集成代码——适用于清单里任何一条 API。用得稳的几条经验按数据变化频率设缓存。天气十分钟一刷可以汇率和国家信息这类数据缓存几小时到一天没有压力。最朴素的内存缓存就够用const cache new Map(); async function fetchCached(url, key, ttl 10 * 60 * 1000) { const hit cache.get(key); if (hit Date.now() - hit.at ttl) return hit.data; const data await (await fetch(url)).json(); cache.set(key, { data, at: Date.now() }); return data; }失败重试配指数退避。对非关键数据重试 2-3 次、间隔 1s/2s/4s仍失败就走降级路径。关键功能准备 2-3 个同分类备选。清单本身就是备选池比如汇率需求No认证的 Frankfurter、ratesapi 与apiKey认证的 Currencylayer 都在 Currency Exchange 一节里切换时只需改 URL 和认证头。密钥只放环境变量。apiKey类条目注册后密钥通过环境变量或配置中心注入不要写进代码或提交进仓库前端页面里出现的apiKey意味着任何拿到它的人都能用你的额度。先查免费额度再上线。清单不记录限速信息注册后在服务商文档里确认免费层级的请求上限按峰值流量留出余量。会踩的坑与绕法浏览器直连被 CORS 拦截。原因是部分服务不返回 CORS 头而清单里这类条目标的是CORS: No或Unknown。绕法有二后端加一层转发代理或在同分类里换一条CORS: Yes的条目。Unknown表示社区未确认用前自己验证一次。把 Auth 字段当成完整接入方案。这个字段只回答要不要凭据、什么类型不回答参数叫什么、放 Header 还是 Query。X-Mashape-Key是例外——它直接给出了 Header 名。其余情况以 API 官网文档为准清单条目末尾的链接就指向文档。免费条目随时可能失效。免费服务没有 SLA端点变更或停服不会通知清单维护者。项目侧有定期链接检查.github/workflows/scheduled-link-check.yml 与 check-links.yml来清理坏链你的侧防线是上一节说的备选 API以及上线后对关键依赖加简单的可用性监控。免费额度被共享用户耗尽。热门免费 API 的限额是全局的高峰期返回 429 并非你的 bug。绕法缓存减少请求、错峰批量、或换一条限额更宽松的同类条目。参与维护贡献流程流程很短克隆仓库并建立本地分支git clone https://gitcode.com/GitHub_Trending/pu/public-api-lists cd public-api-lists在 README.md 的对应分类下按字母序插入一行字段取值必须用封闭枚举描述末尾不加标点。若字母序拿不准仓库自带排序脚本python3 .github/scripts/sort_entries.py --fix。提交 PR 前确认 CI 通过格式、枚举、排序、去重、PR 规模限制每 PR 最多 5 条新条目、3 个分类并把提交 squash 成一个。纯文档类 PR修拼写、改描述、补坏链同样欢迎。需要注意的是 CONTRIBUTING.md 明确声明该清单不是营销渠道以推广付费服务为目的的提交会被拒绝社区行为准则见 CODE_OF_CONDUCT.md。项目由志愿者维护依赖赞助保持无广告运营赞助方横幅即来自仓库 assets/ 目录。结语先打开 README.md 的 Index按你的需求定位分类把同分类条目横向比一遍 Auth、HTTPS、CORS 三列选中后用 curl 验证一次真实响应再写集成代码。如果过程中发现坏链或更好的条目按贡献指南提一个 PR这是维护这类社区清单最直接的方式。【免费下载链接】public-api-listsA curated list of free public APIs — searchable, community-maintained, with a free JSON API.项目地址: https://gitcode.com/GitHub_Trending/pu/public-api-lists创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价