Przejdź do treści

Idempotentne tworzenie zadań ​

Zapobiegaj podwójnemu drukowi podczas ponawiania żądań po przekroczeniu limitu czasu lub błędzie sieci.

Dlaczego druk wymaga idempotencji ​

Limit czasu może zostać przekroczony po przyjęciu żądania przez CloudPrint, ale przed otrzymaniem odpowiedzi przez serwer klienta. Utworzenie nowego zadania w tym momencie może wydrukować dokument dwa razy.

Budowa klucza ​

Użyj stabilnego klucza operacji, np. shipment-18451-label-v1. Musi mieć nie więcej niż 128 znaków i pozostać identyczny dla ponowień z tymi samymi danymi. Celowy ponowny wydruk jest nową operacją i wymaga nowego klucza.

Zasady ponownego użycia ​

Dla tego samego konta identyczne klucz i dane zwracają pierwotny wynik. Ten sam klucz z innymi danymi zwraca 409 Conflict. Zapisz klucz przed pierwszym żądaniem.

Odzyskiwanie po niepewności ​

Po błędzie sieci ponów to samo żądanie z tym samym kluczem. Po otrzymaniu print_job_id zapisz go i odczytuj stan zamiast tworzyć nowe zadanie.

Powiązana dokumentacja ​

Przewodniki dotyczące integracji CloudPrint, podłączania lokalnego agenta i obsługi procesów drukowania.