Condividi tramite


Code Search Results - Fetch Code Search Results

Fornisce un set di risultati per il testo di ricerca.

POST https://almsearch.dev.azure.com/{organization}/{project}/_apis/search/codesearchresults?api-version=7.1-preview.1

Parametri dell'URI

Nome In Necessario Tipo Descrizione
organization
path True

string

Nome dell'organizzazione di Azure DevOps.

project
path

string

ID progetto o nome del progetto

api-version
query True

string

Versione dell'API da usare. Deve essere impostato su '7.1-preview.1' per usare questa versione dell'API.

Corpo della richiesta

Nome Tipo Descrizione
$orderBy

SortOption[]

Opzioni per l'ordinamento dei risultati della ricerca. Se impostato su Null, i risultati verranno restituiti ordinati in base alla pertinenza. Se vengono fornite più opzioni di ordinamento, i risultati vengono ordinati nell'ordine specificato in OrderBy.

$skip

integer

Numero di risultati da ignorare.

$top

integer

Numero di risultati da restituire.

filters

object

Filtri da applicare. Impostarlo su Null se non sono presenti filtri da applicare.

includeFacets

boolean

Flag per scegliere il faceting nel risultato. Il comportamento predefinito è false.

includeSnippet

boolean

Flag per scegliere di includere il frammento di codice corrispondente nel risultato. Il comportamento predefinito è false.

searchText

string

Testo di ricerca.

Risposte

Nome Tipo Descrizione
200 OK

CodeSearchResponse

operazione riuscita

Sicurezza

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

Nome Descrizione
vso.code Concede la possibilità di leggere il codice sorgente e i metadati relativi a commit, insiemi di modifiche, rami e altri artefatti del controllo della versione. Concede inoltre la possibilità di cercare il codice e ricevere notifiche sugli eventi di controllo della versione tramite hook del servizio.

Esempio

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
      }
    ]
  }
}

Definizioni

Nome Descrizione
CodeResult

Definisce il risultato del codice contenente le informazioni dei file di ricerca e dei relativi metadati.

CodeSearchRequest

Definisce una richiesta di ricerca del codice.

CodeSearchResponse

Definisce un elemento di risposta di ricerca del codice.

Collection

Definisce i dettagli della raccolta.

Project

Definisce i dettagli del progetto.

Repository

Definisce i dettagli del repository.

SortOption

Definisce come ordinare il risultato.

Version

Descrive i dettagli relativi a una versione del file di risultati.

VersionControlType

Tipo di controllo della versione del file di risultati.

CodeResult

Definisce il risultato del codice contenente le informazioni dei file di ricerca e dei relativi metadati.

Nome Tipo Descrizione
collection

Collection

Raccolta del file di risultati.

contentId

string

ContentId del file di risultato.

fileName

string

Nome del file di risultati.

matches

object

Dizionario del campo per raggiungere gli offset nel file dei risultati. La chiave identifica l'area in cui sono stati trovati i riscontri, ad esempio contenuto/nome file e così via.

path

string

Percorso in cui è presente il file di risultati.

project

Project

Progetto del file di risultati.

repository

Repository

Repository del file di risultati.

versions

Version[]

Versioni del file di risultati.

CodeSearchRequest

Definisce una richiesta di ricerca del codice.

Nome Tipo Descrizione
$orderBy

SortOption[]

Opzioni per l'ordinamento dei risultati della ricerca. Se impostato su Null, i risultati verranno restituiti ordinati in base alla pertinenza. Se vengono fornite più opzioni di ordinamento, i risultati vengono ordinati nell'ordine specificato in OrderBy.

$skip

integer

Numero di risultati da ignorare.

$top

integer

Numero di risultati da restituire.

filters

object

Filtri da applicare. Impostarlo su Null se non sono presenti filtri da applicare.

includeFacets

boolean

Flag per scegliere il faceting nel risultato. Il comportamento predefinito è false.

includeSnippet

boolean

Flag per scegliere di includere il frammento di codice corrispondente nel risultato. Il comportamento predefinito è false.

searchText

string

Testo di ricerca.

CodeSearchResponse

Definisce un elemento di risposta di ricerca del codice.

Nome Tipo Descrizione
count

integer

Numero totale di file corrispondenti.

facets

object

Dizionario che archivia una matrice di Filter oggetti in base a ogni facet.

infoCode

integer

Codice numerico che indica eventuali informazioni aggiuntive: 0 - Ok, 1 - Account in fase di reindicizzazione, 2 - L'indicizzazione dell'account non è stata avviata, 3 - Richiesta non valida, 4 - Query con caratteri jolly con prefisso non supportato, 5 - MultiWords con facet di codice non supportato, 6 - L'account viene eseguito l'onboarding o la reindicizzazione dell'account, 8 - Valore superiore tagliato a maxresult consentito 9 - I rami vengono indicizzati, 10 - Facet non abilitato, 11 - Elementi di lavoro non accessibili, 19 - Query di frasi con filtri di tipo di codice non supportati, 20 - Query con caratteri jolly con filtri di tipo di codice non supportati. Qualsiasi altro codice informativo viene usato a scopo interno.

results

CodeResult[]

Elenco di file corrispondenti.

Collection

Definisce i dettagli della raccolta.

Nome Tipo Descrizione
name

string

Nome della raccolta.

Project

Definisce i dettagli del progetto.

Nome Tipo Descrizione
id

string

ID del progetto.

name

string

Nome del progetto.

Repository

Definisce i dettagli del repository.

Nome Tipo Descrizione
id

string

ID del repository.

name

string

Nome del repository.

type

VersionControlType

Tipo di controllo della versione del file di risultati.

SortOption

Definisce come ordinare il risultato.

Nome Tipo Descrizione
field

string

Nome del campo in base al quale eseguire l'ordinamento.

sortOrder

string

Ordine (ASC/DESC) in cui devono essere ordinati i risultati.

Version

Descrive i dettagli relativi a una versione del file di risultati.

Nome Tipo Descrizione
branchName

string

Nome del ramo.

changeId

string

ChangeId nel ramo specificato associato a questa corrispondenza.

VersionControlType

Tipo di controllo della versione del file di risultati.

Nome Tipo Descrizione
custom

string

Per uso interno.

git

string

tfvc

string