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 klienta
const databaseProduct = {
    // Informacje o produkcie + dodatkowe pole md5
    versionHash: "78e731027d8fd50ed642340b7c9a63b3"
}

// Product pobrany z API Deante
const 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ć
Data ostatniej modyfikacji : 0