Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
documents/batch
Questa sezione descrive i messaggi di richiesta e risposta HTTP per la risorsa documents/batch
.
Crei batch di documenti per descrivere i dati che desideri caricare su un CloudSearch dominio Amazon. Un batch di documenti è una raccolta di operazioni di aggiunta ed eliminazione che rappresentano i documenti che desideri aggiungere, aggiornare o eliminare da un tuo dominio. I batch possono essere descritti in formato JSON o XML. Un batch fornisce tutte le informazioni di cui Amazon CloudSearch ha bisogno per l'indicizzazione. Ogni articolo che desideri poter restituire come risultato di ricerca (ad esempio un prodotto) è rappresentato come un documento: un batch è semplicemente una raccolta di richieste di aggiunta ed eliminazione per singoli documenti. Ogni documento ha un ID univoco e uno o più campi che contengono i dati che si desidera ricercare e restituire all'interno dei risultati.
Per aggiornare un documento, devi specificare una richiesta di aggiunta con l'ID del documento che vuoi aggiornare. Per ulteriori informazioni, consulta Aggiunta e aggiornamento di documenti in Amazon CloudSearch. Analogamente, per eliminare un documento devi inviare una richiesta di eliminazione con l'ID del documento che vuoi eliminare. Per informazioni sull'eliminazione dei documenti, consultare Eliminazione di documenti in Amazon CloudSearch.
Per ulteriori informazioni sull'invio di dati per l'indicizzazione, consultare upload documents.
documents/batch JSON API
Richieste documents/batch JSON
Il corpo di una richiesta documents/batch
utilizza i formati JSON o XML per specificare le operazioni che vuoi eseguire per i documenti. La rappresentazione JSON di un batch è una raccolta di oggetti che definiscono le singole operazioni di aggiunta ed eliminazione. La proprietà type
indica se un oggetto rappresenta un'operazione di aggiunta o di eliminazione. Ad esempio, il seguente batch JSON aggiunge un documento ed elimina un documento:
[ { "type": "add", "id": "tt0484562", "fields": { "title": "The Seeker: The Dark Is Rising", "directors": ["Cunningham, David L."], "genres": ["Adventure","Drama","Fantasy","Thriller"], "actors": ["McShane, Ian","Eccleston, Christopher","Conroy, Frances", "Crewson, Wendy","Ludwig, Alexander","Cosmo, James", "Warner, Amelia","Hickey, John Benjamin","Piddock, Jim", "Lockhart, Emma"] } }, { "type": "delete", "id": "tt0484575" }]
Nota
Quando specifichi i batch di documenti nel formato JSON, il valore di un campo non può essere null
.
Di seguito è riportato lo schema JSON
{ "type": "array", "minItems": 1, "items": { "type": "object", "properties": { "type": { "type": "string", "enum": ["add", "delete"], "required": true }, "id": { "type": "string", "pattern": "[a-z0-9][a-z0-9_]{0,127}", "minLength": 1, "maxLength": 128, "required": true }, "fields": { "type": "object", "patternProperties": { "[a-zA-Z0-9][a-zA-Z0-9_]{0,63}": { "type": "string", } } } } } }
Proprietà della richiesta documents/batch (JSON)
Proprietà | Descrizione | Richiesto |
---|---|---|
type (tipo) | Tipo di operazione: add o delete . |
Sì |
id | Stringa alfanumerica. I caratteri consentiti sono: A-Z (maiuscole), -a-z (minuscole), 0-9, _ (carattere di sottolineatura), - (trattino), / (barra), # (cancelletto), : (due punti). La lunghezza massima è 128 caratteri. | Sì |
campi | Insieme di una o più proprietà field_name che definiscono i campi contenuti nel documento. Condizione: obbligatoria per le operazioni di aggiunta. Deve contenere almeno una proprietà field_name. |
Condizionale |
field_name | Specifica una campo nel documento in fase di aggiunta. I nomi di campo devono iniziare con una lettera e possono includere i seguenti caratteri: a-z (minuscole), 0-9 e _ (carattere di sottolineatura). I nomi di campo devono avere una lunghezza compresa tra 3 e 64 caratteri. Il nome score è riservato e non può essere utilizzato come nome di campo. Per specificare più valori per un campo, è necessario specificare un array di valori invece di un singolo valore. Per esempio:
Condizione: deve essere specificato almeno un campo nell'oggetto campi. |
Condizionale |
Risposta documents/batch (JSON)
Il corpo della risposta elenca il numero di operazioni di aggiunta ed eliminazione eseguite e gli eventuali errori o avvisi generati.
Di seguito è riportata la rappresentazione dello schema JSON di una risposta dell'API del servizio documenti:
{ "type": "object", "properties": { "status": { "type": "text", "enum": ["success", "error"], "required": true }, "adds": { "type": "integer", "minimum": 0, "required": true }, "deletes": { "type": "integer", "minimum": 0, "required": true }, "errors": { "type": "array", "required": false, "items": { "type": "object", "properties": { "message": { "type": "string", "required": true } } } }, "warnings": { "type": "array", "required": false, "items": { "type": "object", "properties": { "message": { "type": "string", "required": true } } } } } }
Proprietà della risposta documents/batch (JSON)
Proprietà | Descrizione |
---|---|
status | Stato del risultato: success o error . |
adds | Numero di operazioni di aggiunta di documenti eseguite. Sempre zero quando lo stato è error . |
deletes | Numero di operazioni di eliminazione di documenti eseguite. Sempre zero quando lo stato è error . Per informazioni sull'eliminazione permanente dei documenti, consultare Eliminazione di documenti in Amazon CloudSearch. |
errori | Fornisce informazioni su un errore di analisi o convalida. Specificato solo se lo stato è error . |
attenzione | Fornisce informazioni su un avviso generato durante l'analisi o la convalida. |
Codici di stato documents/batch
Una richiesta del servizio documenti può restituire tre tipi di codici di stato:
I codici di stato 5xx indicano che si è verificato un errore interno del server. Consigliamo di intercettare e riprovare tutti i codici di errore 5xx in quanto solitamente rappresentano condizioni di errore transitorie.
I codici di stato 4xx indicano che la richiesta non è stata formulata correttamente.
I codici di stato 2xx indicano che la richiesta è riuscita.
Errore | Descrizione | Codice di stato HTTP |
---|---|---|
No Content-Type | L'intestazione Content-Type è assente. | 400 |
No Content-Length | L'intestazione Content-Lenght è assente. | 411 |
Incorrect Path | Il percorso URL non corrisponde a ''/YYYY-MM-DD/documents/batch''. | 404 |
Invalid HTTP Method | Il metodo HTTP non è POST. Le richieste devono essere inviate a documenti/batch. | 405 |
Invalid Accept Type | L'intestazione Accept specifica un tipo di contenuto diverso da ''application/xml'' o ''application/json''. Le risposte possono essere inviate solo come XML o JSON. | 406 |
Request Too Large | La lunghezza del corpo della richiesta è superiore al valore massimo consentito. | 413 |
Invalid Content Type | Il tipo di contenuto è diverso da "application/json" o "application/xml". | 415 |
Invalid Character Set | Il set di caratteri è diverso da "'ASCII'', ''ISO-8859-1'' o ''UTF-8''. | 415 |
Intestazioni di richiesta comuni
Nome | Descrizione | Richiesto |
---|---|---|
Content-Type | Tipo MIME standard che descrive il formato dei dati oggetto. Per ulteriori informazioni, consultare la sezione 14 del protocollo RFC 2616 di W3C Impostazione predefinita: application/json Vincoli: solo application/json o application/xml |
Richiesto |
Content-Length | La lunghezza in byte del corpo della richiesta. | Sì |
Accettare | Tipo MIME standard che descrive il formato dei dati della risposta. Per ulteriori informazioni, consultare la sezione 14 del protocollo RFC 2616 di W3C Impostazione predefinita: Content-Type della richiesta Vincoli: solo application/json o application/xml |
No |
Intestazioni di risposta comuni
Nome | Descrizione |
---|---|
Content-Type | Tipo MIME standard che descrive il formato dei dati oggetto. Per ulteriori informazioni, consultare la sezione 14 del protocollo RFC 2616 di W3C Impostazione predefinita: valore dell'intestazione Accept nella richiesta oppure Content-Type della richiesta se l'intestazione Accept non è presente o non specifica application/xml o application/json. Vincoli: solo application/xml o application/json |
Content-Length | La lunghezza in byte del corpo della risposta. |