Hub documentation
قيود ملفات تعريف الارتباط في Spaces
قيود ملفات تعريف الارتباط في Spaces
في مساحات Hugging Face، تخضع التطبيقات لقيود معينة عند استخدام ملفات تعريف الارتباط. ويعود السبب الرئيسي إلى بنية صفحات المساحات (https://huggingface.co/spaces/<user>/<app>)، التي تستضيف تطبيقات تعمل على نطاق مختلف (*.hf.space) داخل إطار iframe. ولأسباب أمنية، تميل المتصفحات الحديثة إلى تقييد استخدام ملفات تعريف الارتباط من صفحات iframe المستضافة على نطاق مختلف عن الصفحة الأم.
الأثر على استضافة تطبيقات Streamlit باستخدام Docker SDK
من الحالات التي قد تصبح فيها قيود ملفات تعريف الارتباط مشكلة هي عند استضافة تطبيقات Streamlit باستخدام Docker SDK. افتراضيًا، يفعّل Streamlit حماية XSRF المعتمدة على ملفات تعريف الارتباط. ونتيجةً لذلك، لن تعمل بعض المكونات التي ترسل البيانات إلى الخادم، مثل st.file_uploader()، بشكل صحيح على HF Spaces حيث يُقيَّد استخدام ملفات تعريف الارتباط.
لتجاوز هذه المشكلة، ستحتاج إلى تعيين خيار server.enableXsrfProtection في Streamlit على false. هناك طريقتان للقيام بذلك:
حجة سطر الأوامر: يمكن تحديد الخيار كحجة سطر أوامر عند تشغيل تطبيق Streamlit. فيما يلي مثال على الأمر:
streamlit run app.py --server.enableXsrfProtection false
ملف الإعدادات: بدلاً من ذلك، يمكنك تحديد الخيار في ملف إعدادات Streamlit
.streamlit/config.toml. تكتبه على النحو التالي:[server] enableXsrfProtection = false
Update on GitHubعند استخدامك لـ Streamlit SDK، لا داعي للقلق بشأن ذلك لأن SDK يقوم بذلك نيابةً عنك.