Hub documentation

Spaces'te çerez kısıtlamaları

Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

Spaces'te çerez kısıtlamaları

Hugging Face Spaces’te uygulamalar, çerezleri kullanırken belirli kısıtlamalara tabidir. Bunun başlıca nedeni, Spaces sayfalarının yapısıdır (https://huggingface.co/spaces/<user>/<app>); bu sayfalar, ana sayfa ile farklı bir alan adında (*.hf.space) barındırılan uygulamaları bir iframe içinde içerir. Güvenlik gereği, modern tarayıcılar, ana sayfadan farklı bir alan adında barındırılan iframe sayfalarındaki çerez kullanımını kısıtlama eğilimindedir.

Docker SDK ile Streamlit Uygulamalarını Barındırma Üzerindeki Etki

Bu çerez kısıtlamalarının sorunlu hale gelebileceği bir durum, Docker SDK kullanılarak Streamlit uygulamalarının barındırılmasıdır. Varsayılan olarak Streamlit, çerez tabanlı XSRF korumasını etkinleştirir. Sonuç olarak, sunucuya veri gönderen st.file_uploader() gibi belirli bileşenler, çerez kullanımının kısıtlandığı HF Spaces üzerinde düzgün çalışmaz.

Bu sorunu aşmak için Streamlit'te server.enableXsrfProtection seçeneğini false olarak ayarlamanız gerekir. Bunu yapmanın iki yolu vardır:

  1. Komut satırı argümanı: Streamlit uygulamasını çalıştırırken seçenek, komut satırı argümanı olarak belirtilebilir. Örnek komut:

    streamlit run app.py --server.enableXsrfProtection false
  2. Yapılandırma dosyası: Alternatif olarak, seçeneği Streamlit yapılandırma dosyasında .streamlit/config.toml belirleyebilirsiniz. Bunu şu şekilde yazarsınız:

    [server]
    enableXsrfProtection = false

Streamlit SDK'yi kullanırken bununla uğraşmanıza gerek yoktur çünkü SDK bunu sizin için yapar.

Update on GitHub