Jak wygenerować i poprosić o zapisanie pliku z zawartości w przeglądarce klienta? [duplikować]
To pytanie ma już tutaj odpowiedź:
JavaScript: Utwórz i zapisz plik 11 odpowiedziMam sytuację, w której muszę dać moim użytkownikom opcję zapisywania niektórych danych przechowywanych lokalnie w ich pamięci klienta na dysku. Obecne obejście, jakie mam, to taki program obsługi
(define-handler (download-deck) ((deck :json))
(setf (header-out :content-type) "application/json"
(header-out :content-disposition) "attachment")
deck)
co robi dokładnie tak, jak wygląda. Klient wysyła swoje dane i zapisuje zwrócony plik lokalnie.
To wydaje się głupie.
Proszę,Proszę powiedz mi, że istnieje lepszy, prostszy, w wielu przeglądarkach sposób pozwalający klientowi zapisać lokalne dane na dysku za pomocą okna dialogowego zapisywania plików.
Każda odpowiedź, którą przeczytałem na ten temat, brzmi: „nie, nie można zapisywać plików za pomocą javascript” lub „tak, jest jeden częściowo udokumentowany fragment interfejsu API Chrome, który może pozwolić ci zrobić to na trzech stronach”.