嗨,我有一个问题,我没有找到可以解决的网络帮助。问题是我想使用Rest API列出给定作业中的所有任务(正在运行)。问题是只提取了10个第一个任务。有50个任务。
我尝试使用字段RowsPerRead并将其设置为100,例如如下所述,没有成功。 https://msdn.microsoft.com/en-us/library/windows/desktop/hh529658(v=vs.85).aspx
任何帮助都将受到高度赞赏
答案 0 :(得分:1)
要获得作业的所有任务,您必须使用官方文档中所述的请求返回的x-ms-continuation-queryId
值:
https://msdn.microsoft.com/en-us/library/windows/desktop/hh529658(v=vs.85).aspx
QueryId
在Get Task List操作的连续序列中,从前一个Get Task List操作中的响应中的x-ms-continuation-QueryId头指定内部数据。有关详细信息,请参阅本主题后面的“响应标头”部分。
为了说明一下,让我们说你要求获得所有现有的工作。您的请求的答案将为x-ms-continuation-queryId
值queryId1
。您必须在下一个请求中使用此值才能获得以下RowsPerRead
个作业。第二个请求的答案将包含x-ms-continuation-queryId
值queryId2
,依此类推,直到返回的值与前一个值相同。此时,您将知道您已找回所有工作。
https://127.0.0.1:443/WindowsHPC/{0}/Jobs?api-version=2012-11-01.4.0
https://127.0.0.1:443/WindowsHPC/{0}/Jobs?api-version=2012-11-01.4.0&QueryId={queryId1}
https://127.0.0.1:443/WindowsHPC/{0}/Jobs?api-version=2012-11-01.4.0&QueryId={queryId2}
关于字段RowsPerRead
,它仅在HPC Pack 2012 Release 3
开始生效。在早期版本中,RowsPerRead
固定为10。