Hub documentation
Batasan cookie di Spaces
Batasan cookie di Spaces
Di Hugging Face Spaces, aplikasi memiliki beberapa keterbatasan saat menggunakan cookie. Hal ini terutama disebabkan oleh struktur halaman Spaces (https://huggingface.co/spaces/<user>/<app>), yang berisi aplikasi yang dihosting di domain berbeda (*.hf.space) di dalam iframe. Karena alasan keamanan, browser modern cenderung membatasi penggunaan cookie dari halaman iframe yang dihosting di domain berbeda dari halaman induknya.
Dampak pada Hosting Aplikasi Streamlit dengan Docker SDK
Salah satu kasus di mana pembatasan cookie ini dapat menjadi bermasalah adalah saat meng-hosting aplikasi Streamlit menggunakan Docker SDK. Secara default, Streamlit mengaktifkan perlindungan XSRF berbasis cookie. Akibatnya, komponen tertentu yang mengirim data ke server, seperti st.file_uploader(), tidak akan berfungsi dengan baik di HF Spaces di mana penggunaan cookie dibatasi.
Untuk mengatasi masalah ini, Anda perlu mengatur opsi server.enableXsrfProtection di Streamlit menjadi false. Ada dua cara untuk melakukan ini:
Argumen baris perintah: Opsi ini dapat ditentukan sebagai argumen baris perintah saat menjalankan aplikasi Streamlit. Berikut adalah contoh perintahnya:
streamlit run app.py --server.enableXsrfProtection false
Berkonfigurasi file: Sebagai alternatif, Anda dapat menentukan opsi di file konfigurasi Streamlit
.streamlit/config.toml. Anda menuliskannya seperti ini:[server] enableXsrfProtection = false
Update on GitHubSaat Anda menggunakan Streamlit SDK, Anda tidak perlu khawatir tentang hal ini karena SDK melakukannya untuk Anda.