Porównywanie zmian
W celu uniknięcia aktualizacji całej bazy produktów Deante zalecamy wprowadzenie do systemu integracji porównywanie wersji produktu. Dla każdego produktu wysłanego w API można w prosty sposób wyliczyć sumę kontrolną (rekomendujemy md5). Jeżeli suma kontrolna produktu przychodzącego w API różni się od tej zapisanej w bazie danych, aktualizujemy informacje produktowe.
Implementacje
JavaScript
import md5 from 'md5'// Pobrany produkt z bazy danych klientaconst databaseProduct = { // Informacje o produkcie + dodatkowe pole md5 versionHash: "78e731027d8fd50ed642340b7c9a63b3"}// Product pobrany z API Deanteconst apiProduct = { // Informacje o produkcie z API Deante}const apiHash = md5(JSON.stringify(apiProduct));const hasChanged = databaseProduct.versionHash !== apiHash// W przypadku wystąpienia zmiany hasChanged zostanie ustawiony na true// Oznacza to, że ten produkt należy zaktualizować
PHP
// Pobrany produkt z bazy danych klienta$databaseProduct = array( // Informacje o produkcie + dodatkowe pole md5 versionHash => "78e731027d8fd50ed642340b7c9a63b3");// Product pobrany z API Deante$apiProduct = array( // Informacje o produkcie z API Deante);$apiHash = md5(json_encode(apiProduct));$hasChanged = $databaseProduct['versionHash'] !== $apiHash// W przypadku wystąpienia zmiany hasChanged zostanie ustawiony na true// Oznacza to, że ten produkt należy zaktualizować