In der Shopping Content API kann eine Batchanfrage mehrere Einträge enthalten. Für jeden Eintrag kann eine beliebige Methode (insert, update, delete oder custom) definiert werden.
Die Merchant API bietet keine benutzerdefinierten Batchmethoden. Stattdessen können Sie die parallele Ausführung einzelner Anfragen veranlassen.
Mit der Clientbibliothek
Wenn Sie die Clientbibliothek verwenden, können Sie diesen Shopping Content API-Code verwenden.
ProductsCustomBatchResponse batchResponse =
content.products().custombatch(batchRequest).execute();
Schreiben Sie das Merchant API-Äquivalent so:
List<ApiFuture<ProductInput>> futures;
for (InsertProductInputRequest request : requests) {
futures.add(productInputsServiceClient.insertProductInputCallable().futureCall(request));
}
List<ProductInput> responses;
for (ApiFuture<ProductInput> future : futures) {
responses.add(future.get());
}
Ohne Clientbibliothek
Wenn Sie die Clientbibliothek nicht verwenden, führen Sie das Batching wie unter Batchanfragen beschrieben aus.
Betrachten wir beispielsweise einen Shopping Content API-Beitrag wie diesen:
POST https://shoppingcontent.googleapis.com/content/v2.1/products/batch
{
"entries": [
{
"method": "insert",
"product": { … }
} … ]
}
Mit der Merchant API würde der Code in etwa so aussehen:
POST https://merchantapi.googleapis.com/batch
Content-Length: content_length
content-type: multipart/mixed; boundary="================="
--=================
Content-Type: application/http
Content-Transfer-Encoding: binary
POST v1beta/accounts/123/productInputs:insert
Content-Type: application/json
accept: application/json
{...}
--=================
…