Puppet forge API不会返回预期的JSON

时间:2018-03-09 17:45:16

标签: puppet

我正在尝试访问Puppet Forge API以查找最新版本的模块,以便将版本与我们当前Puppetfile中的版本进行比较。

然而,作为访问API的完全新手,我所知道的和Forge文档假设的内容之间存在差距,所以我无处可去。

https://forgeapi.puppet.com上的文档告诉我:

  

通过forgeapi.puppetlabs.com域通过HTTPS访问API。   所有数据都以JSON格式返回。

但是,我找不到任何JSON格式的数据。

我有一个简单的Python脚本,用于连接服务器:

import requests
r=requests.get("https://forgeapi.puppet.com")
print(r.status_code)
print(r.headers['content-type'])

内容类型为text/html;charset=utf-8,而不是我期待的application/json

页面本身包含我不知道如何访问的示例。

如何从这里查看实际的JSON?

1 个答案:

答案 0 :(得分:1)

您需要在网址中指定一个端点。 (我同意,文档不清楚。我不得不猜测/v3是必需的。)

所以这可以作为例子:

import requests
r=requests.get("https://forgeapi.puppet.com/v3/modules") # Add /v3/modules here
print(r.status_code)
print(r.headers['content-type'])
print(r.content) # JSON data is in here

其他端点都记录在您提供的链接中。