Datu avots: https://myfusion.eu/api/products/full-export
Faila formāts: NDJSON (ar jaunās rindas simbolu atdalīts JSON).
Svarīgi! Izmantojiet šo failu tikai pirmajai produktu importēšanai. Pēc tam izmantojiet pilno API integrāciju: https://myfusion.eu/api
Tas nozīmē:
- 1 rinda = 1 produkts
- katra rinda ir atsevišķs JSON objekts
- fails jālasa kā plūsma, nevis pilnībā jāielādē atmiņā
Autorizācija
Tiek izmantots Bearer Token. Pieprasījuma galvene: Authorization: Bearer YOUR_API_TOKEN
Kāpēc NDJSON ir labāks par parasto JSON?
- ātra lielu failu lasīšana
- iespēja apstrādāt pa daļām
- minimāls atmiņas patēriņš
- piemērots ļoti lielu datu apjomu importēšanai
Vissvarīgākais princips
Nepareizi:
file_get_contents(...);
json_decode(...);
Tas ielādēs visu failu atmiņā.
Pareizi: lasiet failu rindu pa rindai vai caur plūsmu.
PHP piemērs
<?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);
// produkta apstrāde
echo $row['productId'] . PHP_EOL;
}
fclose($handle);
Ieteicamais imports
Lielākam ātrumam ieteicams:
- lasīt datus kā plūsmu
- apstrādāt ierakstus partijās
- izmantot batch insert vai batch update
- neveidot atsevišķu vaicājumu katram ierakstam, ja vien tas nav nepieciešams
Datu atjaunināšana
Izmantojiet lauku descriptionUpdateDate. Tas norāda apraksta pēdējās modifikācijas datumu, un to var izmantot, lai atjauninātu tikai mainītos produktus.