الحصول على الصفحة بواسطة URL
في هذا المثال، نوضح كيفية استرجاع صفحة CMS واحدة بواسطة معرف URL الخاص بها باستخدام واجهة برمجة التطبيقات OneEntry.
✅ هدف السيناريو:
- الاتصال بواجهة برمجة التطبيقات OneEntry
- استرجاع صفحة بواسطة معرف URL الخاص بها
- الوصول إلى محتوى الصفحة عبر localizeInfos و attributeValues
✅ ما تحتاجه:
- PROJECT_URL و APP_TOKEN صالحين للمصادقة مع واجهة برمجة التطبيقات OneEntry.
- صفحة تم تكوينها في OneEntry مع URL معروف (مثل "home_web")
📌 مهم:
- هذه الأمثلة لا تتضمن معالجة الأخطاء.
- يمكنك إدارة الأخطاء باستخدام كتلة try-catch أو من خلال استخدام بناء مثل await Promise.catch((error) => error).
📚 انظر في الوثائق:
📦 مرجع SDK:
جربها مباشرة
قم بتشغيل هذه الطريقة بشكل تفاعلي في JS SDK sandbox — قم بتوصيل Project URL و App Token في الزيارة الأولى، ثم افتح:
- الحصول على الصفحة بواسطة URL — في هذا المثال، نوضح كيفية استرجاع صفحة CMS واحدة بواسطة معرف URL الخاص بها باستخدام واجهة برمجة التطبيقات OneEntry.
السيناريو
1. استيراد defineOneEntry من SDK وتعريف PROJECT_URL و APP_TOKEN
مثال:
import { defineOneEntry } from 'oneentry';
const PROJECT_URL = 'your-project-url';
const APP_TOKEN = 'your-app-token';
2. إنشاء عميل API باستخدام defineOneEntry()
مثال:
const { Pages } = defineOneEntry(PROJECT_URL, {
token: APP_TOKEN,
});
3. الحصول على الصفحة بواسطة URL باستخدام Pages.getPageByUrl()
مثال:
const page = await Pages.getPageByUrl('home_web');
console.log('Page: ', page);
النتيجة:
{
"id": 9,
"parentId": null,
"pageUrl": "home_web",
"depth": 0,
"localizeInfos": {
"title": "Home web",
"menuTitle": "Home web",
"htmlContent": "",
"plainContent": ""
},
"isVisible": true,
"blocks": [],
"type": "common_page",
"templateIdentifier": null,
"attributeSetIdentifier": null,
"attributeValues": {},
"moduleFormConfigs": [],
"isSync": false
}
المثال النهائي
// 1. Import defineOneEntry from SDK and define PROJECT_URL and APP_TOKEN
import { defineOneEntry } from 'oneentry';
const PROJECT_URL = 'your-project-url';
const APP_TOKEN = 'your-app-token';
// 2. Creating an API client with [defineOneEntry()](/docs/index/#Installation)
const { Pages } = defineOneEntry(PROJECT_URL, {
token: APP_TOKEN,
});
// 3. Get page by URL with [Pages.getPageByUrl()](/docs/pages/getPageByUrl)
const page = await Pages.getPageByUrl('home_web');
console.log('Page: ', page);