القائمة الرسمية كتالوج ميزات Doconut تسرد طباعة المتصفح وتصدير PDF كإمكانات للعارض. لا يزال التحكم في الوصول إليهما يتطلب قرارين منفصلين: ما إذا كان Doconut يعرض الإجراء ذي الصلة وما إذا كان تطبيق المضيف يفوض تلك العملية للمستخدم الحالي والوثيقة.

للحصول على الضوابط الدقيقة المدعومة في بنية التثبيت الخاصة بك، ابدأ بـ توثيق Doconut والعينات المعبأة المتاحة من صفحة تحميل Doconut الرسمية. لا تقم بنسخ مفاتيح التكوين أو شفرة المصدر من نسخة غير ذات صلة أو من مقالة غير موثوقة.
1. حدد سياسة الطباعة أولاً
اكتب من يمكنه الطباعة وتحت أي ظروف قبل تعديل شريط الأدوات. سياسة مفيدة تجيب على أسئلة مثل:
- هل يُسمح بالطباعة لكل عارض، أم لأدوار معينة فقط، أم للوثائق المحددة؟
- هل يعتمد القرار على المستأجر، حالة الحالة، تصنيف الوثيقة، أو انتهاء الصلاحية؟
- هل يلزم وجود علامة مائية على المخرجات القابلة للطباعة؟
- هل يجب تدقيق أحداث الطباعة؟
- هل يمكن للمستخدم طباعة نسخة سابقة من الوثيقة؟
- ماذا يجب أن يحدث عندما تتغير الأذونات أثناء فتح المعاينة؟
تجنب استخدام قيمة منطقية عالمية واحدة عندما تكون القاعدة الفعلية سياقية. صمّم الطباعة كعملية مستقلة حتى يمكن تفويضها بشكل منفصل عن العرض والتنزيل.
2. افصل حالة واجهة المستخدم عن التفويض
يمكن لصفحة المضيف أن تقرّر ما إذا كانت ستظهر عنصر تحكم الطباعة بعد أن تتلقى نتيجة إذن مملوكة للتطبيق. هذا يحسّن الوضوح للمستخدمين الذين لا يمكنهم الطباعة.
مع ذلك، إخفاء عنصر التحكم ليس حدًا لتفويض الصلاحيات. لا يزال بإمكان المستخدم استدعاء نقطة النهاية المعروفة مباشرةً، أو إعادة إرسال طلب سابق، أو تفعيل طباعة المتصفح على المحتوى الظاهر. يجب على كل مسار خادم ينتج مخرجات قابلة للطباعة أن يطبق نفس السياسة.
استخدم حالات متميزة في واجهة المستخدم:
| الحالة | سلوك العارض | سلوك الخادم |
|---|---|---|
| السماح بالطباعة | إظهار إجراء الطباعة المدعوم | التفويض وإنشاء المخرجات المطلوبة |
| رفض الطباعة | إخفاء الإجراء أو تعطيله مع شرح واضح | إرجاع استجابة ممنوعة |
| سياسة غير معروفة | إبقاء الإجراء غير متاح أثناء تحميل الإذن | عدم إنشاء مخرجات |
| انتهاء الجلسة | طلب إعادة المصادقة من المستخدم | رفض الطلب القديم |
3. احمِ نقطة النهاية للطباعة
احمِ عملية التطبيق التي تستدعي الطباعة أو تُعيد مخرجات قابلة للطباعة. يجب أن يأخذ قرار التفويض في الاعتبار عضوية المستأجر، الملكية، التصنيف، حالة سير العمل، وإصدار الوثيقة. حلّ الوثيقة على الخادم بدلاً من قبول مسار أو عنوان URL للتخزين مقدم من العميل.
إذا كان تطبيقك يطبع عبر مسار مخصص للعارض بدلاً من إنشاء PDF، طبّق نفس التفويض قبل استدعاء ذلك المسار.
4. قم بتكوين نسخة العارض المثبتة
بمجرد وجود قاعدة الخادم، قم بتكوين واجهة Doconut UI باستخدام الخيار الدقيق الموثّق للحزمة وملفات العينة المرفقة مع نسختك. تسمح لك العروض الحية لـ Doconut بمراقبة سلوك العارض المدعوم قبل الالتزام بتكامل معين. تحقق من:
- أين يتم ضبط الخيار: تكوين الخادم، نموذج العرض، أو تهيئة العميل.
- ما إذا كان يخفي عنصر شريط الأدوات، أو يعطل إجراءً، أو يؤثر على المخرجات المولدة.
- ما إذا كانت القيمة تُطبق على كل نسخة من العارض أو على مستوى عالمي.
- ما إذا كانت الطباعة والتصدير عمليتين منفصلتين.
- ما إذا كان تحديث ما غير اسم الخيار أو القيمة الافتراضية.
اعتبر العينة الرسمية مصدر الحقيقة. اسم خاصية يبدو معقولًا ليس دليلًا كافيًا على أن العارض المثبت يتعرف عليه.
5. التعامل مع طباعة المتصفح بأمانة
لا يمكن لإعداد المشاهد أن يضمن أن المعلومات الظاهرة لن تُطبع أو تُلتقط أبداً. قد يطبع المتصفح صفحة المضيف، ويمكن للمستخدمين التقاط لقطات شاشة أو صور فوتوغرافية. يمكن لتقنيات اعتراض لوحة المفاتيح وCSS المخصص للطباعة تحسين التجربة المتوقعة، لكنها إجراءات يمكن تجاوزها من جانب العميل.
إذا كان من غير المرغوب أن تُنتج صفحة المضيف نسخة ورقية مفيدة، يمكن لتطبيقك استخدام عرض مخصص للطباعة لاستبدال المعاينة برسالة توضيحية. احرص على إبقاء سلوك صفحة المضيف منفصلاً عن ضوابط المشاهد الموثقة من Doconut.
لا تصف ذلك كحماية للوثيقة. استخدم التقديم من جانب الخادم، التفويض، الصادرات المُتحكم فيها، والعلامات المائية الظاهرة عندما تتطلب تقييمات المخاطر ردعًا أقوى.
6. الحفاظ على التحميل، التصدير، والطباعة منفصلة
غالبًا ما يتعامل المستخدمون والمطورون مع هذه كزر “قراءة فقط” واحد، لكنها تمثل تدفقات بيانات مختلفة:
- View يعرض المحتوى المُصوَّر.
- Download يُعيد المصدر أو ملفًا مخزنًا آخر.
- Export ينشئ صيغة مشتقة.
- Print ينتج تمثيلًا قابلًا للطباعة أو يستدعي طباعة المتصفح.
قم بتفويض كل عملية بشكل صريح. قد يُسمح للمستخدم الذي لا يستطيع الطباعة بالتحميل، أو العكس. يجب أن يعكس شريط الأدوات قرارات الخادم بدلاً من تعريفها.
7. إضافة أحداث تدقيق مفيدة
إذا كانت الطباعة حساسة، سجِّل القرار دون تسجيل الوثيقة نفسها. يمكن للحدث أن يتضمن المستخدم، المستأجر، معرف الوثيقة، الإصدار، نتيجة السياسة، الطابع الزمني، ومعرّف الارتباط.
سجِّل كل من المحاولات الناجحة والمرفوضة. إذا أنشأت خدمة الطباعة ملفًا مؤقتًا، سجِّل أيضًا ما إذا تم إكمال تنظيفه. احتفظ بمسارات الملفات، الرموز، عناوين الوثائق التي تحتوي على بيانات شخصية، والمحتوى القابل للطباعة بعيدًا عن السجلات الروتينية.
8. اختبار ما وراء زر الإزالة
شريط الأدوات هو مجرد التأكيد الأول. أضف اختبارات للعملية بأكملها:
مستخدم مخوَّل
- الإجراء الطباعة المقصود مرئي.
- طلب الطباعة ينجح للوثيقة المسموح بها.
- يُستخدم الإصدار الصحيح.
- تظهر العلامات المطلوبة على المخرجات المُولدة.
- يسجل حدث التدقيق النجاح.
مستخدم غير مخوَّل
- الإجراء غير موجود أو معطل.
- طلب مباشر إلى مسار الطباعة يُعيد استجابة ممنوعة.
- تغيير معرف الوثيقة لا يتجاوز القاعدة.
- لا يمكن إعادة استخدام عنوان URL المنسوخ من جلسة مخوَّلة بشكل غير صحيح.
- الرفض لا يكشف ما إذا كان مستأجر آخر يملك الوثيقة.
تغييرات الحالة
- إلغاء الإذن أثناء الجلسة يُطبق على طلب الطباعة التالي.
- الجلسة المنتهية لا يمكنها الطباعة.
- وثيقة محذوفة أو مستبدلة تُنتج خطأً مُتحكمًا فيه.
- المخرجات الطباعة المؤقتة تتبع قاعدة الاحتفاظ المُكوَّنة.
يمكن لأتمتة المتصفح التحقق من الحالة المرئية ورمز الاستجابة. يجب أن تتحقق الاختبارات المتكاملة من تقييم السياسة وتفويض مستوى الوثيقة بشكل مستقل.
أسئلة شائعة
هل إخفاء زر الطباعة يوقف اختصار الطباعة في المتصفح؟
لا. يزيل الإجراء المقصود للمشاهد فقط إذا كان المشاهد المثبت يُطبق هذا السلوك. تتطلب طباعة المتصفح والتقاط الشاشة اعتبارًا منفصلًا ولا يمكن منعها بالكامل بواسطة شفرة جانب العميل.
هل يجب تضمين إذن الطباعة في عنوان URL للعرض؟
يفضل اتخاذ قرار تفويض من جانب الخادم مرتبط بالمستخدم المُصَدَّق، الوثيقة، والعملية. إذا كان المرجع المؤقت يحمل أذونات، حدده بنطاق ضيق، احمِه من السجلات والمرسِلِين، وأعد التحقق من الإجراءات الحساسة.
هل إلغاء تمكين الطباعة كافٍ للوثائق السرية؟
لا. إنه مجرد عنصر تحكم في قابلية الاستخدام أو الردع. تحتاج سير العمل السرية أيضًا إلى حماية التخزين، تفويض على مستوى الكائن، صادرات مُتحكم فيها، قواعد احتفاظ، مراقبة، ونموذج مخاطر متبقية مقبول.
الخلاصة
تبدأ تنفيذية تحكم طباعة موثوقة في Doconut من الخادم وتنتهي في الواجهة. عرّف السياسة، احمِ العملية، قم بتكوين الخيار الموثق فقط للمشاهد المثبت لديك، واشرح النتيجة للمستخدمين، واختبر الطلبات المباشرة بالإضافة إلى رؤية شريط الأدوات. استخدم صفحة الميزة الرسمية، الوثائق، التحميلات، والعروض التوضيحية كمصادر للتنفيذ بدلاً من إعادة إنشاء شفرة المنتج في المقال.