Visualizzazione dello stato di un'operazione

Alcune operazioni da te richieste sono a lunga esecuzione, ad esempio la creazione di un set di prodotti tramite importazione in blocco, l'eliminazione definitiva di un set di prodotti ed l'eliminazione definitiva dei prodotti orfani. Questi tipi di richieste restituiranno un JSON con un ID operazione che puoi utilizzare per ottenere lo stato dell'operazione.

Ad esempio, una richiesta di eliminazione batch (purge) restituisce il seguente JSON:

{
"name": "projects/project-id/locations/location-id/operations/bc4e1d412863e626"
}

In questo caso, l'ID operazione è bc4e1d412863e626. Gli esempi riportati di seguito mostrano come ottenere lo stato di questa operazione con questo ID.

REST

Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:

  • PROJECT_ID: l'ID del tuo progetto Google Cloud.
  • LOCATION_ID: un identificatore di posizione valido. Gli identificatori di località validi sono: us-west1, us-east1, europe-west1 e asia-east1.
  • OPERATION_ID: l'ID dell'operazione. L'ID è l'ultimo elemento del nome dell'operazione. Ad esempio:
    • nome operazione: projects/PROJECT_ID/locations/LOCATION_ID/operations/bc4e1d412863e626
    • ID operazione: bc4e1d412863e626

Metodo HTTP e URL:

GET https://vision.googleapis.com/v1/locations/location-id/operations/operation-id

Per inviare la richiesta, scegli una delle seguenti opzioni:

arricciatura

Esegui questo comando:

curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "x-goog-user-project: project-id" \
"https://vision.googleapis.com/v1/locations/location-id/operations/operation-id"

PowerShell

Esegui questo comando:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred"; "x-goog-user-project" = "project-id" }

Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://vision.googleapis.com/v1/locations/location-id/operations/operation-id" | Select-Object -Expand Content
Dovresti vedere un output simile al seguente relativo a un'operazione di eliminazione definitiva del set di prodotti:
{
  "name": "locations/location-id/operations/operation-id",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.vision.v1.BatchOperationMetadata",
    "state": "SUCCESSFUL",
    "submitTime": "2019-09-04T15:58:39.131591882Z",
    "endTime": "2019-09-04T15:58:43.099020580Z"
  },
  "done": true,
  "response": {
    "@type": "type.googleapis.com/google.cloud.vision.v1.PurgeProductsRequest",
    "parent": "projects/project-id/locations/location-id",
    "productSetPurgeConfig": {
      "productSetId": "project-set-id"
    },
    "force": true
  }
}

Dovresti vedere un output simile al seguente per un'operazione di eliminazione definitiva di prodotti orfani:

{
  "name": "locations/location-id/operations/operation-id",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.vision.v1.BatchOperationMetadata",
    "state": "SUCCESSFUL",
    "submitTime": "2019-09-04T16:08:38.278197397Z",
    "endTime": "2019-09-04T16:08:45.075778639Z"
  },
  "done": true,
  "response": {
    "@type": "type.googleapis.com/google.cloud.vision.v1.PurgeProductsRequest",
    "parent": "projects/project-id/locations/location-id",
    "deleteOrphanProducts": true,
    "force": true
  }
}