Hub documentation

Batasan cookie di Spaces

Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

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:

  1. 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
  2. Berkonfigurasi file: Sebagai alternatif, Anda dapat menentukan opsi di file konfigurasi Streamlit .streamlit/config.toml. Anda menuliskannya seperti ini:

    [server]
    enableXsrfProtection = false

Saat Anda menggunakan Streamlit SDK, Anda tidak perlu khawatir tentang hal ini karena SDK melakukannya untuk Anda.

Update on GitHub