Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/sql-server-2008/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
无法在GitHub V3 API中对发布进行分页_Github_Github Api - Fatal编程技术网

无法在GitHub V3 API中对发布进行分页

无法在GitHub V3 API中对发布进行分页,github,github-api,Github,Github Api,我试图列出GitHub上使用V3API的公共存储库的所有版本。以下是我的请求: curl -is -H 'Accept: application/vnd.github.v3+json' \ https://api.github.com/repos/ffmpeg/ffmpeg/releases 我收到的回复标题如下: HTTP/1.1 200 OK Server: GitHub.com Date: Fri, 29 Jan 2016 20:23:15 GMT Content-Type: a

我试图列出GitHub上使用V3API的公共存储库的所有版本。以下是我的请求:

curl -is -H 'Accept: application/vnd.github.v3+json' \
    https://api.github.com/repos/ffmpeg/ffmpeg/releases
我收到的回复标题如下:

HTTP/1.1 200 OK
Server: GitHub.com
Date: Fri, 29 Jan 2016 20:23:15 GMT
Content-Type: application/json; charset=utf-8
Content-Length: 29612
Status: 200 OK
X-RateLimit-Limit: 60
X-RateLimit-Remaining: 19
X-RateLimit-Reset: 1454099558
Cache-Control: public, max-age=60, s-maxage=60
ETag: "947039722a1073c5279a9fd39d00c0bf"
Vary: Accept
X-GitHub-Media-Type: github.v3; format=json
Access-Control-Allow-Credentials: true
Access-Control-Expose-Headers: ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-
Access-Control-Allow-Origin: *
Content-Security-Policy: default-src 'none'
Strict-Transport-Security: max-age=31536000; includeSubdomains; preload
X-Content-Type-Options: nosniff
X-Frame-Options: deny
X-XSS-Protection: 1; mode=block
Vary: Accept-Encoding
X-Served-By: b0ef53392caa42315c6206737946d931
X-GitHub-Request-Id: XXXXXXXXXXXXXXXXXXXXXXXXXXXX
请注意缺少
链接
响应标题?在响应正文中,我只返回了大约7个版本,并且似乎无法通过手动指定
?page=N
查询参数来向前或向后分页

在某些背景下,FFmpeg目前大约有226个版本,我只得到其中的7个,无法分页


是否有什么地方我做错了,这会限制我从GitHub v3 API返回的响应?

GitHub将其专有的发布功能与常规Git标记相结合。您看到的ffmpeg的许多“版本”实际上只是标签

这是一个例子。请注意,它包含的信息远远多于。尽管GitHub的web UI显示的标签与发行版混在一起,但GitHub的:

这将返回一个发布列表,其中不包括未与发布关联的常规Git标记。要获取Git标记的列表,请使用

按照GitHub的建议使用,可以获得更多的结果,并包括一个
链接
标题,正如您所期望的:

curl -is -H 'Accept: application/vnd.github.v3+json' \
    https://api.github.com/repos/ffmpeg/ffmpeg/tags

那么你是说web上的GitHub发布页面只是显示了从未制作成发布的标记,因此发布与API中的标记之间存在差异?@NaftuliTzviKay,它同时显示了两者。使用下一个链接返回几页(我认为这是另一个奇怪的UI问题),您将看到一个真正的版本与标签混合在一起。我不知道他们为什么这样做。让我困惑。不同之处在于web UI做的事情与API不同。@NaftuliTzviKay,我同意。这是GitHub设计最差的特性之一。