Création d'un document
Les étapes présentées ici expliquent comment créer un document.
-
Envoyez une demande
POSTavec le contenu JSON du document pour créer un document. -
Exécutez la commande suivante :
https://$ACCOUNT.cloudant.com/$DATABASE.
Création d'un document via HTTP
Les étapes suivantes vous indiquent comment créer un document à l'aide de HTTP.
-
Envoyez une demande
PUTavec le contenu JSON du document à l'aide du protocole HTTP pour créer un document. -
Exécutez la commande suivante :
PUT /$DATABASE/$DOC_ID HTTP/1.1
Content-Type: application/json
Exemples de création d'un document
Voici un exemple de création d'un document « IBM Cloudant » pour ce JSON dans une base de données non partitionnée :
{
"type": "event",
"userid": "abc123",
"eventType": "addedToBasket",
"productId": "1000042",
"date": "2019-01-28T10:44:22.000Z"
}
Vous pouvez personnaliser la création d'un document en fonction du langage de programmation que vous souhaitez utiliser en sélectionnant ce langage dans les exemples de code.
Voir un exemple de création d'un document :
curl -H "Authorization: Bearer $API_BEARER_TOKEN" -X PUT "$SERVICE_URL/events/0007241142412418284" -H "Content-Type: application/json" --data '{ "type": "event", "userid": "abc123", "eventType": "addedToBasket", "productId": "1000042", "date": "2019-01-28T10:44:22.000Z }'
import com.ibm.cloud.cloudant.v1.Cloudant;
import com.ibm.cloud.cloudant.v1.model.Document;
import com.ibm.cloud.cloudant.v1.model.DocumentResult;
import com.ibm.cloud.cloudant.v1.model.PutDocumentOptions;
Cloudant service = Cloudant.newInstance();
Document eventDoc = new Document();
eventDoc.put("type", "event");
eventDoc.put("userid", "abc123");
eventDoc.put("eventType", "addedToBasket");
eventDoc.put("productId", "1000042");
eventDoc.put("date", "2019-01-28T10:44:22.000Z");
PutDocumentOptions documentOptions =
new PutDocumentOptions.Builder()
.db("events")
.docId("0007241142412418284")
.document(eventDoc)
.build();
DocumentResult response =
service.putDocument(documentOptions).execute()
.getResult();
System.out.println(response);
const { CloudantV1 } = require('@ibm-cloud/cloudant');
const service = CloudantV1.newInstance({});
const eventDoc = {
type: 'event',
userid: 'abc123',
eventType: 'addedToBasket',
productId: '1000042',
date: '2019-01-28T10:44:22.000Z'
};
service.putDocument({
db: 'events',
docId: '0007241142412418284',
document: eventDoc
}).then(response => {
console.log(response.result);
});
from ibmcloudant.cloudant_v1 import Document, CloudantV1
service = CloudantV1.new_instance()
event_doc = Document(
type='event',
userid='abc123',
eventType='addedToBasket',
productId='1000042',
date='2019-01-28T10:44:22.000Z'
)
response = service.put_document(
db='events',
doc_id='0007241142412418284',
document=event_doc
).get_result()
print(response)
eventDoc := cloudantv1.Document{}
eventDoc.SetProperty("type", "event")
eventDoc.SetProperty("userid", "abc123")
eventDoc.SetProperty("eventType", "addedToBasket")
eventDoc.SetProperty("productId", "1000042")
eventDoc.SetProperty("date", "2019-01-28T10:44:22.000Z")
putDocumentOptions := service.NewPutDocumentOptions(
"events",
"0007241142412418284",
)
putDocumentOptions.SetDocument(&eventDoc)
documentResult, response, err := service.PutDocument(putDocumentOptions)
if err != nil {
panic(err)
}
b, _ := json.MarshalIndent(documentResult, "", " ")
fmt.Println(string(b))
L'exemple précédent de Go requiert le bloc d'importation suivant :
import (
"encoding/json"
"fmt"
"github.com/IBM/cloudant-go-sdk/cloudantv1"
)
Tous les exemples de Go nécessitent l'initialisation de l'objet service. Pour plus d'informations, reportez-vous à la documentation de l'API Section Authentification pour avoir des exemples.
La réponse est un document JSON qui contient l'ID du document créé, la chaîne de révision et "ok": true.
Si vous n'avez pas fourni de zone _id, IBM Cloudant en génère un automatiquement sous la forme d'un
UUID.
L'échec de la création du document génère une réponse contenant une description de l'erreur.
Voici un exemple de réponse suite à la création réussie d'un document :
{
"id": "exampleid",
"ok": true,
"rev": "2-056f5f44046ecafc08a2bc2b9c229e20"
}
Si le quorum d'écriture ne peut être atteint lors d'une tentative de création d'un document, une réponse « 202 » est renvoyée.