Ostatnio bawię się WebGL i uruchomiłem czytnik Collada. Problem jest dość powolny (Collada to bardzo szczegółowy format), więc zacznę konwertować pliki do łatwiejszego w użyciu formatu (prawdopodobnie JSON). Mam już kod do parsowania pliku w JavaScript, więc równie dobrze mogę go użyć jako mojego eksportera! Problem polega na oszczędzaniu.
Teraz wiem, że mogę przeanalizować plik, wysłać wynik na serwer i poprosić przeglądarkę o przesłanie pliku z powrotem do serwera w celu pobrania. Ale w rzeczywistości serwer nie ma nic wspólnego z tym konkretnym procesem, więc po co się w to angażować? Mam już zawartość żądanego pliku w pamięci. Czy jest jakiś sposób, aby przedstawić użytkownikowi plik do pobrania przy użyciu czystego JavaScript? (Wątpię, ale równie dobrze mogę zapytać ...)
Żeby było jasne: nie próbuję uzyskać dostępu do systemu plików bez wiedzy użytkowników! Użytkownik dostarczy plik (prawdopodobnie metodą przeciągnij i upuść), skrypt przekształci plik w pamięci, a użytkownik zostanie poproszony o pobranie wyniku. Wszystko to powinno być „bezpiecznymi” działaniami, jeśli chodzi o przeglądarkę.
[EDYCJA]: Nie wspomniałem o tym z góry, więc plakaty, które odpowiedziały na „Flash” są wystarczająco ważne, ale częścią tego, co robię, jest próba podkreślenia, co można zrobić za pomocą czystego HTML5 ... więc Flash jest wprost w moim przypadku. (Chociaż jest to całkowicie poprawna odpowiedź dla każdego, kto robi „prawdziwą” aplikację internetową). W takim przypadku wygląda na to, że nie mam szczęścia, chyba że chcę zaangażować serwer. W każdym razie dzięki!