[英]How to hit the rest endpoint that has `:.*` as a part of the path param field
我在我的項目中使用Stash的REST API。 我的任務是獲取特定標簽的標簽詳細信息。 在檢查Stash的REST API文檔之后,我找到了我應該使用的正確端點。 它是
/rest/api/1.0/projects/{projectKey}/repos/{repositorySlug}/tags/{name:.*}
請參閱此鏈接以獲取Stash的REST API文檔。
還有一個端點/rest/api/1.0/projects/{projectKey}/repos/{repositorySlug}/tags
使用此端點,我可以檢索所有標簽。 StashTag
對象看起來像這樣。
{
"id": "refs/tags/v4.0.0",
"displayId": "v4.0.0",
"latestChangeset": "234dadf41742cfc2a10cadc7c2364438bd8891c5",
"latestCommit": "234dadf41742cfc2a10cadc7c2278658bd8891c5"
"hash" : "null"
}
我的第一個問題是,我不知道將哪個字段用作{name:.*}
的參數。 它應該是displayId
還是Id
或其他任何值。
第二個問題是,我不知道擁有:
冒號)后跟一個是什么意思.
(點)在端點/rest/api/1.0/projects/{projectKey}/repos/{repositorySlug}/tags/{name:.*}
。
有人可以向我解釋:.
的目的是什么:.
在路徑參數中以及如何達到這種終點。 完整端點的一個示例也很好。
到目前為止,我已經嘗試過
https://stashtest.abc.com/rest/api/1.0/projects/KARTIK/repos/kartiks-test-repository/tags/v4.0.0
https://stashtest.abc.com/rest/api/1.0/projects/KARTIK/repos/kartiks-test-repository/tags/refs/tags/v4.0.0
這些端點都不起作用。
任何幫助表示贊賞。
{name:.*}
實際上只是在說字段name
可以是任何東西。 將此內容整理成糟糕的文檔。 可以將其視為正則表達式字段,因為這正是它的本質。 我敢肯定,他們曾經有類似^[0-9]
東西,然后回過頭來更改它,因為他們意識到僅使用標簽號會忽略使用輕量級標簽功能的任何人。
從標簽版本中刪除v
,看看是否有幫助。 如果沒有,我也建議創建一個輕量級標簽 (類似於mytag
),然后查看是否可以/kartiks-test-repository/tags/mytag
方式進行打標(即/kartiks-test-repository/tags/mytag
)。
但是查看該文檔可以告訴我,您的標簽名稱中的v
引發了REST調用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.