You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

能否通过CrossRef Rest API获取Zenodo出版物元数据?API调用JSON解析错误问题咨询

用CrossRef REST API获取Zenodo出版物元数据的正确方式

当然可以通过CrossRef REST API获取Zenodo上的出版物元数据,但你遇到的JSON解析错误,大概率是因为DOI在URL中的格式没有正确处理导致的。

问题原因

你调用的URL https://api.crossref.org/works/10.5281/zenodo.2594632 里,DOI中的斜杠(/)会被浏览器或请求工具当作URL路径的分隔符,导致CrossRef API无法正确识别完整的DOI,返回的可能是HTML错误页面而非标准JSON数据,这就触发了JSON解析失败。

解决方法

有两种可靠的方式来正确请求:

1. 对DOI进行URL编码

把DOI中的斜杠替换成URL编码值 %2F,让API能识别完整的DOI。正确的请求URL应该是:

https://api.crossref.org/works/10.5281%2Fzenodo.2594632

这个请求会返回标准JSON格式的元数据,你可以正常解析使用。

2. 使用查询参数方式请求

如果不想处理URL编码,也可以用CrossRef API的查询参数指定DOI,这种方式更直观:

https://api.crossref.org/works?query=10.5281/zenodo.2594632

请求会返回匹配该DOI的作品列表,你可以从返回结果的items数组中提取目标元数据。

额外建议

其实Zenodo本身提供了更直接的REST API来获取元数据,比如针对你这个记录,直接调用:

https://zenodo.org/api/records/2594632

返回的元数据会更贴合Zenodo平台的特性,如果你只需要Zenodo的内容,这种方式可能更高效。

内容的提问来源于stack exchange,提问作者Gorka

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.06 06:52:40