Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/linq/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
Gitlab GET请求中的日期时间格式是什么?_Gitlab_Gitlab Api - Fatal编程技术网

Gitlab GET请求中的日期时间格式是什么?

Gitlab GET请求中的日期时间格式是什么?,gitlab,gitlab-api,Gitlab,Gitlab Api,一些对GitLab API的请求,如清单Merge requests(),允许使用datetime类型的URL查询参数(created_之后和created_之前参数,适用于此特定示例) 我似乎找不到可以工作的datetime参数的格式。时间戳(有毫秒和没有毫秒)不起作用,ISO格式(如2017-06-29T11:00:00.000Z)也不起作用 可能此查询参数根本不起作用?请尝试ISO8601时间戳,因此请删除纳秒并包含时区: 2017-06-29T11:00:00+00:00 使用rubyD

一些对GitLab API的请求,如清单Merge requests(),允许使用
datetime
类型的URL查询参数(
created_之后
created_之前
参数,适用于此特定示例)

我似乎找不到可以工作的
datetime
参数的格式。时间戳(有毫秒和没有毫秒)不起作用,ISO格式(如
2017-06-29T11:00:00.000Z
)也不起作用


可能此查询参数根本不起作用?

请尝试ISO8601时间戳,因此请删除纳秒并包含时区:

2017-06-29T11:00:00+00:00

使用ruby
DateTime
类作为参考,因为这个类在Gitlab中使用

Gitlab的合并请求API类:

找到了原因:尽管在官方API文档中列出并描述了参数,但在发布版本中尚未包括在之前创建的参数和在之后创建的参数

从GitLab 9.3.5版开始,它仍然列在未发布的
下:


这是适用于我的时间格式(标准ISO-8601):
三周前=(datetime.datetime.now(timezone.utc)-timedelta(days=21)).isoformat()。

mrs=request(f'/merge\u requests?state=merged&created\u after={3周前}和per\u page=100')

在Gitlab 12.6.4-ee(企业版)中,ISO8601日期时间格式,如“2020-02-12T00:08:15Z”和“2020-02-12T00:07:15+01:00”在URL编码时工作。因此,“2020-02-12T00:08:15Z”->“2020-02-12T00%3A08%3A15Z”和“2020-02-12T00:07:15+01:00”->“2020-02-12T00%3A07%3A15%2B01%3A00”。所以一个完整的(假)URL示例是:

您是否尝试过
2017-06-29T11%3A00%3A00.000Z
(iso URL编码)?@BertrandMartel也尝试过,但没有成功。啊,该死,我发现了问题:我们使用的是社区版,而不是企业版。CE中不提供在
之前创建的
和在
之后创建的
。在这种情况下,堆栈策略是什么?我应该回答这个问题吗?完全移除它?或者这个评论足够吗?自己创建一个答案,并将其标记为成功。好的,这不是CE vs EE的问题:在官方网站上,两个版本的API是相同的:vs。有趣的是,他们GitHub上最新的稳定代码缺少这些参数:我试图在Twitter上从他们那里得到一些答案。这也不起作用。。。我通读了GitLab代码和DateTime Ruby文档。那没用。实际的比较是在这里进行的:(比如417),但这对我没有多大帮助。K,interesting,但日志中没有显示任何内容吗?您是否得到了任何反馈,例如,如果您让参数为空?我没有访问日志的权限-我正在查询我公司的GitLab。我确实得到了200个OK的回复,其中填充了数据——没有40X,即使我用胡言乱语填充了创建的_before参数。此API调用的所有其他查询参数都可以正常工作并已应用,但此参数似乎被忽略。您是否使用了任何更改,而不是第一个没有此字段?不,它是APIv4。至少在我使用的url中指定了v4。