Alcuni metodi dell'API Cloud Translation restituiscono un'operazione a lunga esecuzione.
Questi metodi sono asincroni e l'operazione potrebbe non essere completata quando il metodo restituisce una risposta. Puoi controllare lo stato di un'operazione o annullarla.
Stato operazione
Di seguito viene mostrato come eseguire il polling dello stato di un'operazione.
REST
Richiama il metodo get
per la risorsa
operation
.
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
PROJECT_NUMBER_OR_ID : l'ID numerico o alfanumerico del tuo progetto Google Cloud
location-id : la località che hai scelto per il tuo bucket Cloud Storage
operation-id : ID operazione ricevuto in precedenza
Metodo e URL HTTP:
GET https://translation.googleapis.com/v3/projects/PROJECT_NUMBER_OR_ID /locations/location-id /operations/operation-id
Per inviare la richiesta, espandi una delle seguenti opzioni:
curl (Linux, macOS o Cloud Shell)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso all'
interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
, oppure utilizzando
Cloud Shell ,
che esegue automaticamente l'accesso all'interfaccia a riga di comando di gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "x-goog-user-project: PROJECT_NUMBER_OR_ID " \ "https://translation.googleapis.com/v3/projects/PROJECT_NUMBER_OR_ID /locations/location-id /operations/operation-id "
PowerShell (Windows)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso all'
interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
, oppure utilizzando
Cloud Shell ,
che esegue automaticamente l'accesso all'interfaccia a riga di comando di gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred"; "x-goog-user-project" = "PROJECT_NUMBER_OR_ID " } Invoke-WebRequest ` -Method GET ` -Headers $headers ` -Uri "https://translation.googleapis.com/v3/projects/PROJECT_NUMBER_OR_ID /locations/location-id /operations/operation-id " | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
{
"name": "projects/project-number /locations/location-id /operations/operation-id ",
"metadata": {
"@type": "type.googleapis.com/google.cloud.translation.v3.SomeOperationMetadata",
"state": "SUCCEEDED",
"submitTime": "2019-11-27T22:59:40Z"
}
}
Al termine dell'operazione, viene restituito un valore state
pari a SUCCEEDED
.
Annullamento operazione
Di seguito viene mostrato come annullare un'operazione.
REST
Chiama il metodo cancel
nella risorsa operation
.
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
PROJECT_NUMBER_OR_ID : l'ID numerico o alfanumerico del tuo progetto Google Cloud.
LOCATION : la posizione scelta all'avvio dell'operazione.
OPERATION_ID : l'ID dell'operazione da annullare.
Metodo e URL HTTP:
POST https://translation.googleapis.com/v3/projects/PROJECT_NUMBER_OR_ID /locations/LOCATION_ID /operations/OPERATION_ID :cancel
Per inviare la richiesta, espandi una delle seguenti opzioni:
curl (Linux, macOS o Cloud Shell)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso all'
interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
, oppure utilizzando
Cloud Shell ,
che esegue automaticamente l'accesso all'interfaccia a riga di comando di gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "x-goog-user-project: PROJECT_NUMBER_OR_ID " \ -H "Content-Type: application/json; charset=utf-8" \ -d "" \ "https://translation.googleapis.com/v3/projects/PROJECT_NUMBER_OR_ID /locations/LOCATION_ID /operations/OPERATION_ID :cancel"
PowerShell (Windows)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso all'
interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
, oppure utilizzando
Cloud Shell ,
che esegue automaticamente l'accesso all'interfaccia a riga di comando di gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred"; "x-goog-user-project" = "PROJECT_NUMBER_OR_ID " } Invoke-WebRequest ` -Method POST ` -Headers $headers ` -Uri "https://translation.googleapis.com/v3/projects/PROJECT_NUMBER_OR_ID /locations/LOCATION_ID /operations/OPERATION_ID :cancel" | Select-Object -Expand Content
Dovresti ricevere un codice di stato (2xx) completato e una risposta vuota.
Risorse aggiuntive