Próbuję odszyfrować ciąg base64 dla obrazu z powrotem do pliku binarnego, aby można go było pobrać i wyświetlić lokalnie przez system operacyjny.Wyjątek DOM 5 Nieprawidłowy błąd CHARACTER na poprawnym łańcuchu obrazów base64 w javascript
Ciąg, który z powodzeniem wyrenderowałem po umieszczeniu jako src elementu HTML IMG z prefiksem URI danych (dane: img/png; base64,), ale gdy używa się funkcji atob lub funkcji zamknięcia goog, zawodzi.
Jednakże dekodowanie powiedzie kiedy umieścić tu: http://www.base64decode.org/
pomysłów?
EDYTOWANIE: Udało mi się go zdekodować z inną biblioteką inną niż wbudowana funkcja JS. Ale nadal nie otwiera się lokalnie - na komputerze Mac mówi, że jest uszkodzony lub w nieznanym formacie i nie można go otworzyć.
Kod jest tylko coś takiego:
imgEl.src = 'data:img/png;base64,' + contentStr; //this displays successfully
decodedStr = window.atob(contentStr); //this throws the invalid char exception but i just
//used a different script to get it decode successfully but still won't display locally
sam ciąg base64 jest zbyt długi, aby wyświetlić tutaj (limit wynosi 30.000 znaków)
Dzięki! To jest ratownik. W Base64 miałem absurdalnie długi plik PDF, który powodował błąd w aplikacji mobilnej, ale działał w przeglądarce. Usunięcie spacji działało. – Amod
Dziękuję za to. Miałem podobny problem, ale był to końcowy powrót karetki, który pojawiał się tylko w Safari. Ta sama metodologia to naprawiła. – echappy
Rails pozornie bardzo często przestaje base64, a Chrome zignoruje białe spacje, podczas gdy Safari tego nie zrobi. Twoja sugestia "zamień" spowodowała, że moja aplikacja ponownie działa w Safari. Dzięki za to! – Alex