إنشاء مورد ويب
الهدف
أضف مورد ويب — أي ملف تطبيق مثل حزمة JavaScript أو ورقة أنماط أو مقطع HTML أو شعار أو ملف SVG — تقوم المنصة بتخزينه في قاعدة البيانات وتحزيمه مع حلك، بحيث ينتقل معه أينما استُورد الحل.
مورد الويب مخصص للملفات التي يُبنى منها التطبيق. أما المستند الكبير الذي يرفعه مستخدم أثناء التشغيل فليس مورد ويب — إذ ينتمي إلى تخزين الملفات. وهناك حد أقصى لحجم كل ملف يفصل بين الاثنين.
المتطلبات المسبقة
- أنت مسجّل الدخول إلى مركز التحكم الإداري.
- توجد بيئة محددة في الشريط العلوي، وقد فتحت حلًا (راجع إنشاء حل).
الخطوات
- في الحل المفتوح، اختر موارد الويب في شريط التنقل الجانبي.
- اختر جديد.
- أدخل الاسم المعروض والاسم المنطقي. الاسم المنطقي مسبوق ببادئة الناشر
وعلى هيئة مسار — على سبيل المثال
par_/dashboard/app.jsأوpar_/logo.svg. - اختر النوع (JavaScript أو CSS أو HTML أو JSON أو XML أو نص أو PNG أو JPEG أو GIF أو SVG أو أيقونة أو نوع آخر/ثنائي).
- قدّم المحتوى:
- بالنسبة إلى نوع نصي (JavaScript أو CSS أو HTML أو JSON أو XML أو نص أو SVG)، يمكنك إما تحريره مباشرةً في المحرر أو رفع ملف.
- بالنسبة إلى نوع صورة أو ثنائي، تقوم برفع ملف (فليس هناك ما يُكتب).
- اختر حفظ. يُخزَّن الملف مع الحل ويمكن للمنصة أن تقدّمه.
- تعرض القائمة العنوان لكل ملف: المكان الذي تقدمه منه المنصة. افتحه في علامة تبويب جديدة، أو انسخه بالزر المجاور له، لتعطيه لما سيجلب الملف.
رفع مجلد من ملفات يرتبط بعضها ببعض
الصفحة التي تربط ورقة أنماطها وبرنامجها النصي وصورها بعناوين نسبية تحتاج إلى هذه الملفات كلها جنبًا إلى جنب. فبدلًا من إنشائها واحدًا تلو الآخر:
- اضغط الملفات في ملف zip: الملفات نفسها، لا مجلدًا يحيط بها.
- في موارد الويب، اختر رفع مجلد.
- أعطه اسم عرض ومجلدًا تحت بادئة الناشر لديك، مثلًا
par_/badge. - اختر الملف المضغوط ثم رفع.
يُنشأ كل ملف تحت ذلك المجلد محتفظًا بمساره النسبي، فيجد badge.html الذي يربط badge.css
الملف par_/badge/badge.css.
الرفع مرة أخرى إلى المجلد نفسه يحل محل ما فيه، ويزيل الملفات التي لم يعد الملف المضغوط
الجديد يحويها. وهكذا تنشر تغييرًا، لأن مورد الويب لا يُحرَّر في مكانه. أما الملفات التي لا تقدمها
المنصة، مثل .map، فتُتخطّى، وتذكرها النتيجة.
لا يُرفع هنا تطبيق مخصص أو عنصر تحكم مخصص. كل منهما حزمة واحدة تُثبَّت في التطبيقات المخصصة أو عناصر التحكم المخصصة (انظر تسجيل عنصر تحكم مخصص).
ما الذي يحدث خلف الكواليس
تُخزَّن بايتات الملف في قاعدة بيانات المنصة وتُسجَّل بوصفها مكوّنًا من مكوّنات حلك، ولذلك يحمل تصدير الحل الملف معه، ويعيد استيراد الحل إنشاءه في البيئة الهدف. وتتحقق المنصة من بيانات الملف الوصفية، وتتأكد من أن الاسم المنطقي يبدأ ببادئة ناشرك، وترفض أي ملف يتجاوز حد الحجم — فالملف الكبير ينبغي أن يذهب إلى تخزين الملفات بدلًا من ذلك. وعندئذٍ يمكن للمنصة تقديم الملف من عنوانها الخاص بنوع المحتوى الصحيح.
العنوان في القائمة هو …/environments/<البيئة>/webresources/<الاسم المنطقي>، ويجيب أي أحد
دون تسجيل دخول: هذا ما يتيح لصفحة أو طابعة أو رسالة بريد أن تحمّل الملف. لا تضع في مورد ويب
شيئًا لن تنشره.
حل المشكلات
- «…must start with the publisher prefix…» — يجب أن يبدأ الاسم المنطقي ببادئة
ناشرك متبوعةً بـ
_(على سبيل المثالpar_). - «The web resource manifest is invalid…» — يجب أن يكون الاسم المنطقي بحروف صغيرة
وألا يحتوي إلا على حروف وأرقام و
_و.و/و-(بلا مسافات). - «…is over the … cap. Large files belong in Object Storage…» — يتجاوز الملف حد الحجم المسموح به لكل مورد؛ خزّن الملفات الكبيرة في تخزين الملفات، لا في مورد ويب.
- «A web resource '…' already exists in this environment.» — يوجد بالفعل مورد بهذا الاسم المنطقي؛ اختر اسمًا مختلفًا.
- «The bundle entry '…' has a path that would escape its folder.» — يحوي الملف المضغوط مقطع
..أو مسارًا مطلقًا. اضغط الملفات نفسها، لا مسارًا فوقها. - «The bundle holds no files the platform can serve.» — لا شيء في الملف المضغوط من نوع تقدمه المنصة. تحقق من أنك ضغطت الملفات نفسها لا مجلدًا آخر.
- «The bundle holds … files; the limit is 200.» — على الأرجح ضُغط المجلد الخطأ (غالبًا
node_modules).
سيناريوهات ذات صلة
- إنشاء حل.
- تسجيل تطبيق React مخصص.