Интеграциянын негиздери · Жол башчылары
Башыгуу
Ырас, биринчи өтүнүч, жергиликтүү каталар, баракчалоо жана коопсуз өндүрүштүк ишке киргизүү.
error иштетүү жана кайра аракет кылуу жүрүм-туруму текшерилгенден кийин гана мутацияларды кошуңуз.
Бакинг иштеп чыгуучулар жана интеграторлор01
Ырас жана белгилерди сактоо
API белгисин Authorization башкычасына Bearer префикси жок түздөн-түз жөнөтүңүз.
Ар бир интеграция үчүн өзүнчө белги түзүү. Андан кийин башкаларды үзгүлтүккө учуратпай, бир байланышты жокко чыгара аласыз жана ага керектүү уруксаттарды гана бере аласыз.
Токенди сервердик сырларда сактаңыз. аны эч качан JavaScript браузеринде, мобилдик тиркемеде, URL, журналда же аналитикада жөнөтпөңүз.
Bearer же Basic кошулбаңыз. Authorization мааниси SelSup белгиси.
curl --request GET 'https://api.selsup.ru/api/brand/find?limit=50&page=1' \
--header 'Authorization: YOUR_API_TOKEN'
API менен байланышкан чектөөлөр
GET/api/brand/findКоопсуз сыноо өтүнүчү
02
Каталар жана билдирүү жергиликтүү
error туруктуу талаасына бөлүнүп, localMessageди адам окуй турган чыгаруу үчүн гана колдонуңуз.
error тиркемеси, адатта, error, localMessage жана params камтыйт. Server localMessage котормосун пайдалануу менен, белгиси ээси болгон колдонуучунун lang талаасын.
Документтештирүү тили жана Accept-Language error локалын өзгөртпөйт. localMessage коддо эч качан салыштырмалуу болбоңуз же аны машинанын абалы катары сактаңыз.
HTTP абалы, error, params, суроо убактысы жана байланыш ID жазуу. эч качан белгини же жеке маалыматтарды жазуу
{
"error": "brand_already_exists",
"localMessage": "Brand Base already exists",
"params": {
"name": "Base"
}
}
03
Чоң топтомдорду баракчага киргизүү
Калктын тизмесин туруктуу түрдө бөлүп, "NextPage" деген жаңылыштык же кайтарылган барак чектен кыска болсо токтотуңуз.
count=true кошумча эсептөө суроону иштете алат.
Маалыматтар барактар ортосунда өзгөрүшү мүмкүн. кайталангыч синхрондоо үчүн өзгөрүлгүс идентификатор менен топтоо жана процесстин өзгөрүүлөрүн өзүнчө incremental агымда.
let page = 1;
let hasNextPage = true;
while (hasNextPage) {
const url = new URL('https://api.selsup.ru/api/brand/find');
url.searchParams.set('limit', '500');
url.searchParams.set('page', String(page));
url.searchParams.set('sortBy', 'BRANDID');
url.searchParams.set('ascending', 'true');
const response = await fetch(url, {
headers: { Authorization: process.env.SELSUP_API_TOKEN }
});
if (!response.ok) throw await response.json();
const result = await response.json();
await savePage(result.rows);
hasNextPage = result.hasNextPage;
page += 1;
}
API менен байланышкан чектөөлөр
GET/api/brand/findБаракчадагы издөө мисалыGET/api/product/findПродукция издөө
04
Өндүрүштүн текшерүү тизмеси
- 1
Өзүнчө окуйт жана жазат
GET өтүнүчтөрүн биринчи тастыктаңыз.
- 2
Убакыт аралыгы жана кайра аракеттери
Жетекчилердин каталары жана коопсуз операциялар гана. POST өз ачкычы жок дубликат түзөт.
- 3
Бир убактагы чектөө
Акыркы чектөөлөрдү сактаңыз жана экспоненциалдуу артка чегинүү жана кичинекей туш келди дүүлүктүрүү менен кезек колдонуңуз.
- 4
Жыйынтыктарды бириктирүү
Чоң масштабдагы синхрондоодон кийин сандарды жана үлгү идентификаторлорун салыштыруу, андан кийин айырмачылыктарды өзүнчө кезекке көчүрүү.
Бул өтүнүчтү token ээсинин эсебине жөнөтөт. документ жазуу үчүн ырастоо кошумчалайт, бирок сиз дагы эле тест жазууларды колдонуу керек.