Duomenų šaltinis: https://myfusion.eu/api/products/full-export
Failo formatas: NDJSON (naujos eilutės simboliais atskirtas JSON).
Svarbu! Naudokite šį failą tik pirmajam produktų importavimui. Vėliau naudokite pilną API integraciją: https://myfusion.eu/api
Tai reiškia:
- 1 eilutė = 1 produktas
- kiekviena eilutė yra atskiras JSON objektas
- failą reikia skaityti kaip srautą, o ne įkelti viso į atmintį
Autorizacija
Naudojamas Bearer Token. Užklausos antraštė: Authorization: Bearer YOUR_API_TOKEN
Kodėl NDJSON yra geriau už įprastą JSON?
- greitas didelių failų skaitymas
- galima apdoroti dalimis
- minimalus atminties sunaudojimas
- tinka labai didelių duomenų kiekių importavimui
Svarbiausias principas
Neteisingai:
file_get_contents(...);
json_decode(...);
Tai įkels visą failą į atmintį.
Teisingai: skaitykite failą eilutė po eilutės arba per srautą.
PHP pavyzdys
<?php
$url = 'https://myfusion.eu/api/products/full-export';
$token = 'YOUR_API_TOKEN';
$context = stream_context_create([
'http' => [
'method' => 'GET',
'header' => "Authorization: Bearer {$token}\r\n"
]
]);
$handle = fopen($url, 'r', false, $context);
while (($line = fgets($handle)) !== false) {
$row = json_decode($line, true);
// produkto apdorojimas
echo $row['productId'] . PHP_EOL;
}
fclose($handle);
Rekomenduojama importavimo praktika
Dideliam greičiui rekomenduojama:
- skaityti duomenis kaip srautą
- apdoroti įrašus paketais
- naudoti batch insert arba batch update
- nesaugoti kiekvieno įrašo atskira užklausa, jei to nereikia
Duomenų atnaujinimas
Naudokite lauką descriptionUpdateDate. Jis nurodo paskutinio aprašymo modifikavimo datą ir leidžia atnaujinti tik pakeistus produktus.