Code Search Results - Fetch Code Search Results
提供搜尋文字的一組結果。
POST https://almsearch.dev.azure.com/{organization}/{project}/_apis/search/codesearchresults?api-version=7.1-preview.1
URI 參數
名稱 | 位於 | 必要 | 類型 | Description |
---|---|---|---|---|
organization
|
path | True |
string |
Azure DevOps 組織的名稱。 |
project
|
path |
string |
專案識別碼或專案名稱 |
|
api-version
|
query | True |
string |
要使用的 API 版本。 這應該設定為 '7.1-preview.1' 以使用此版本的 API。 |
要求本文
名稱 | 類型 | Description |
---|---|---|
$orderBy |
排序搜尋結果的選項。 如果設定為 null,則會依相關性傳回結果。 如果提供多個排序選項,結果會依 OrderBy 中指定的順序排序。 |
|
$skip |
integer |
要略過的結果數目。 |
$top |
integer |
要傳回的結果數目。 |
filters |
object |
要套用的篩選。 如果沒有要套用的篩選準則,請將它設定為 null。 |
includeFacets |
boolean |
旗標以選擇結果中的 Facet。 預設行為為 false。 |
includeSnippet |
boolean |
選擇要在結果中包含相符程式碼片段的旗標。 預設行為為 false。 |
searchText |
string |
搜尋的文字。 |
回應
名稱 | 類型 | Description |
---|---|---|
200 OK |
成功的作業 |
安全性
oauth2
Type:
oauth2
Flow:
accessCode
Authorization URL:
https://app.vssps.visualstudio.com/oauth2/authorize&response_type=Assertion
Token URL:
https://app.vssps.visualstudio.com/oauth2/token?client_assertion_type=urn:ietf:params:oauth:client-assertion-type:jwt-bearer&grant_type=urn:ietf:params:oauth:grant-type:jwt-bearer
Scopes
名稱 | Description |
---|---|
vso.code | 授與讀取認可、變更集、分支和其他版本控制成品之原始程式碼和中繼資料的能力。 也授與搜尋程式碼的能力,並透過服務勾點取得版本控制事件的通知。 |
範例
Sample Request
POST https://almsearch.dev.azure.com/fabrikam/_apis/search/codesearchresults?api-version=7.1-preview.1
{
"searchText": "CodeSearchController",
"$skip": 0,
"$top": 1,
"filters": {
"Project": [
"MyFirstProject"
],
"Repository": [
"MyFirstProject"
],
"Path": [
"/"
],
"Branch": [
"master"
],
"CodeElement": [
"def",
"class"
]
},
"$orderBy": [
{
"field": "filename",
"sortOrder": "ASC"
}
],
"includeFacets": true
}
Sample Response
{
"count": 1,
"results": [
{
"fileName": "CodeSearchController.cs",
"path": "/CodeSearchController.cs",
"matches": {
"content": [
{
"charOffset": 1187,
"length": 20
},
{
"charOffset": 1395,
"length": 20
},
{
"charOffset": 1686,
"length": 20
}
],
"fileName": [
{
"charOffset": 0,
"length": -1
}
]
},
"collection": {
"name": "DefaultCollection"
},
"project": {
"name": "MyFirstProject",
"id": "00000000-0000-0000-0000-000000000000"
},
"repository": {
"name": "MyFirstProject",
"id": "c1548045-29f6-4354-8114-55ef058be1a3",
"type": "git"
},
"versions": [
{
"branchName": "master",
"changeId": "47e1cc8877baea4b7bb33af803d6cc697914f88b"
}
],
"contentId": "004898f1ad91c9c2a0f492f2d1174468bc3c84ef"
}
],
"infoCode": 0,
"facets": {
"Project": [
{
"name": "MyFirstProject",
"id": "MyFirstProject",
"resultCount": 1
}
],
"Repository": [
{
"name": "MyFirstProject",
"id": "MyFirstProject",
"resultCount": 1
}
],
"CodeElement": [
{
"name": "Class",
"id": "class",
"resultCount": 1
},
{
"name": "Comment",
"id": "comment",
"resultCount": 1
},
{
"name": "Definition",
"id": "def",
"resultCount": 1
}
]
}
}
定義
名稱 | Description |
---|---|
Code |
定義包含所搜尋檔案及其中繼資料資訊的程式碼結果。 |
Code |
定義程式碼搜尋要求。 |
Code |
定義程式碼搜尋回應專案。 |
Collection |
定義集合的詳細資料。 |
Project |
定義專案的詳細資料。 |
Repository |
定義存放庫的詳細資料。 |
Sort |
定義如何排序結果。 |
Version |
描述與結果檔版本相關的詳細資料。 |
Version |
結果檔的版本控制類型。 |
CodeResult
定義包含所搜尋檔案及其中繼資料資訊的程式碼結果。
名稱 | 類型 | Description |
---|---|---|
collection |
結果檔的集合。 |
|
contentId |
string |
結果檔的 ContentId。 |
fileName |
string |
結果檔的名稱。 |
matches |
object |
要叫用結果檔中位移的欄位字典。 索引鍵可識別找到點擊的區域,例如:檔案內容/檔案名等。 |
path |
string |
結果檔存在的路徑。 |
project |
結果檔的專案。 |
|
repository |
結果檔案的存放庫。 |
|
versions |
Version[] |
結果檔的版本。 |
CodeSearchRequest
定義程式碼搜尋要求。
名稱 | 類型 | Description |
---|---|---|
$orderBy |
排序搜尋結果的選項。 如果設定為 null,則會依相關性傳回結果。 如果提供多個排序選項,結果會依 OrderBy 中指定的順序排序。 |
|
$skip |
integer |
要略過的結果數目。 |
$top |
integer |
要傳回的結果數目。 |
filters |
object |
要套用的篩選。 如果沒有要套用的篩選準則,請將它設定為 null。 |
includeFacets |
boolean |
旗標以選擇結果中的 Facet。 預設行為為 false。 |
includeSnippet |
boolean |
選擇要在結果中包含相符程式碼片段的旗標。 預設行為為 false。 |
searchText |
string |
搜尋的文字。 |
CodeSearchResponse
定義程式碼搜尋回應專案。
名稱 | 類型 | Description |
---|---|---|
count |
integer |
相符檔案總數。 |
facets |
object |
字典,針對每個 Facet 儲存物件的陣列 |
infoCode |
integer |
指出任何其他資訊的數值代碼:0 - 確定,1 - 帳戶正在重新編制索引,2 - 帳戶索引尚未啟動,3 - 不支援前置詞萬用字元查詢,5 - 不支援程式碼 Facet 的 MultiWords,6 - 帳戶正在上線,7 - 帳戶已上線或重新編制索引,8 - 已修剪為允許 maxresult 的 Top 值 9 - 正在編制索引分支, 10 - 未啟用 Facet、11 - 無法存取工作專案、19 - 不支援程式碼類型篩選的片語查詢、20 - 不支援程式碼類型篩選的萬用字元查詢。 任何其他資訊程式碼都用於內部用途。 |
results |
相符檔案的清單。 |
Collection
定義集合的詳細資料。
名稱 | 類型 | Description |
---|---|---|
name |
string |
集合的名稱。 |
Project
定義專案的詳細資料。
名稱 | 類型 | Description |
---|---|---|
id |
string |
專案的識別碼。 |
name |
string |
專案的名稱。 |
Repository
定義存放庫的詳細資料。
名稱 | 類型 | Description |
---|---|---|
id |
string |
存放庫的識別碼。 |
name |
string |
存放庫的名稱。 |
type |
結果檔的版本控制類型。 |
SortOption
定義如何排序結果。
名稱 | 類型 | Description |
---|---|---|
field |
string |
應該執行排序的功能變數名稱。 |
sortOrder |
string |
排序 (ASC/DESC) ,其中應該排序結果。 |
Version
描述與結果檔版本相關的詳細資料。
名稱 | 類型 | Description |
---|---|---|
branchName |
string |
分支的名稱。 |
changeId |
string |
與這個相符專案相關聯之指定分支中的 ChangeId。 |
VersionControlType
結果檔的版本控制類型。
名稱 | 類型 | Description |
---|---|---|
custom |
string |
供內部使用。 |
git |
string |
|
tfvc |
string |