Czyszczenie Base64
Darmowe narzędzie online do czyszczenia Base64, które usuwa nieprawidłowe zawartości z ciągów Base64, takie jak znaki nowej linii, spacje i niewidoczne znaki. Obsługuje trzy niezależne opcje: usuwanie białych znaków, usuwanie znaków specjalnych i automatyczne dopełnianie paddingu, generując Base64 ściśle zgodne z RFC 4648.
Powiązane Rekomendacje
Czym jest czyszczenie Base64?
Czyszczenie Base64 to operacja usuwania wszystkich nieprawidłowych i zbędnych znaków z ciągu Base64. Celem jest wygenerowanie czystego Base64 ściśle zgodnego ze standardem RFC 4648, który można łatwo przesyłać, przechowywać i dekodować między różnymi systemami.
Dlaczego trzeba czyścić: Base64 z różnych źródeł często zawiera domieszane nieprawidłowe znaki. ① Znaki nowej linii (\n, \r\n) — załączniki e-mail, pola baz danych, wyjścia logów; ② Spacje i tabulatory — ręczne wklejanie, kopiowanie z Excela; ③ UTF-8 BOM (EF BB BF) — pliki tekstowe zapisane w systemie Windows; ④ Pełne symbole, chińska interpunkcja — błędy kopiowania i wklejania. Wszystkie te elementy powodują błędy dekodera.
Trzy opcje czyszczenia: ① Usuwanie białych znaków (\s \n \r \t) — obsługuje nowe linie i spacje; ② Usuwanie znaków specjalnych — zachowuje tylko alfabet Base64 A-Z a-z 0-9 + / = - _; ③ Automatyczne dopełnianie paddingu — sprawia, że długość wyniku jest wielokrotnością 4. Trzy opcje można zaznaczać niezależnie i łączyć według potrzeb.
Typowe zastosowania: ① Debugowanie API — czyszczenie zwróconego przez interfejsy trzecich Base64, gdy powoduje błąd; ② Import do bazy danych — usuwanie nadmiarowych spacji z kopiowania z Excela; ③ Przetwarzanie wstępne przed dekodowaniem — zapobieganie błędom InvalidCharacterError w atob(); ④ Normalizacja JWT / Data URL — obsługa różnic w przesyłaniu między systemami.
Przypadki użycia
- Przetwarzanie wstępne przed dekodowaniem: czyszczenie Base64 z interfejsów trzecich, JWT, logów, który zawiera nowe linie lub spacje, do postaci bezpośrednio dekodowalnej, unikając InvalidCharacterError.
- Naprawa wklejania z Excela / poczty e-mail: usuwanie nadmiarowych spacji, tabulatorów, znaków nowej linii domieszanych podczas kopiowania Base64 z komórek Excela, treści e-maili.
- Czyszczenie tokenów JWT: normalizacja trzysegmentowego ciągu JWT (header.payload.signature) z nowymi liniami do postaci jednowierszowej, usuwanie nadmiarowych białych znaków.
- Obsługa załączników MIME: czyszczenie formatu Base64 załączników e-mail z automatycznymi podziałami wierszy co 76 znaków, ułatwiając późniejsze dekodowanie.
- Kompatybilność URL Safe: zachowuje znaki - i _, dzięki czemu Base64 w JWT, ścieżkach URL, nazwach plików nie zostanie przypadkowo usunięty.
- Przetwarzanie wstępne przed czyszczeniem wsadowym: używane razem z base64-format / base64-padding — najpierw wyczyść, następnie sformatuj lub dopełnij padding.
Jak Używać
- Wklej lub wpisz zanieczyszczony ciąg Base64 (może zawierać nowe linie, spacje i inne nieprawidłowe znaki).
- Zaznacz opcje czyszczenia według potrzeb: usuwanie białych znaków, usuwanie znaków specjalnych, automatyczne dopełnianie paddingu (domyślnie wszystkie trzy są włączone).
- Sprawdź wyjście po prawej: na żywo wyświetlany jest oczyszczony Base64, licznik znaków, liczba usuniętych znaków, poprawność dekodowania.
- Skopiuj wynik do schowka lub pobierz jako plik .txt do dalszego przetwarzania.
Funkcje
- Opcja usuwania białych znaków: automatycznie usuwa \n, \r, \t i spacje, obsługując scenariusze takie jak załączniki e-mail, wklejanie z Excela.
- Opcja usuwania znaków specjalnych: zachowuje tylko 66 prawidłowych znaków Base64: A-Z a-z 0-9 + / = - _.
- Automatyczne dopełnianie paddingu: opcja sprawiająca, że długość wyniku staje się wielokrotnością 4, naprawiając błędy długości.
- Trzy niezależne, nakładane na siebie opcje: zaznaczaj według potrzeb, elastycznie radząc sobie z różnymi rodzajami zanieczyszczeń.
- Zachowywanie znaków URL Safe: nie usuwa przypadkowo - i _, unikając utraty znaków w scenariuszach JWT / URL.
- Walidacja wyjścia w czasie rzeczywistym: używa atob() przeglądarki do sprawdzania, czy wyjście można zdekodować, status wyświetlany na żywo.
- Licznik znaków i informacje o usuniętych elementach: na żywo pokazuje liczbę znaków wejścia/wyjścia, liczbę usuniętych znaków, status dekodowalności.
- Lokalne przetwarzanie w przeglądarce: wszystkie operacje czyszczenia odbywają się lokalnie, oryginalny Base64 nie jest wysyłany na żaden serwer.
Best Practices
Najpierw wyczyść, potem użyj narzędzia padding do dopełnienia
Czyszczenie usuwa tylko nieprawidłowe znaki i opcjonalnie dopełnia padding. Jeśli Base64 jednocześnie zawiera nowe linie i brakujący padding, zaleca się najpierw zaznaczyć wszystkie trzy opcje czyszczenia, a następnie sprawdzić, czy długość wyjścia nadal nie jest wielokrotnością 4. Jeśli padding nadal jest nieprawidłowy, możesz użyć dedykowanego narzędzia padding.
Trzysegmentowe tokeny JWT przetwarzaj oddzielnie
JWT to całość złożona z trzech segmentów Base64URL (nagłówek.ładunek.podpis) połączonych kropkami. Podczas czyszczenia wszystkie trzy segmenty wymagają usunięcia białych znaków, ale nie wstawiaj dodatkowych znaków między segmentami, inaczej weryfikacja podpisu się nie powiedzie. Zaleca się podział według . przed wklejeniem, oczyszczenie każdego segmentu osobno, a następnie ponowne połączenie.
Dla wejścia URL Safe nie zaznaczaj „usuwania znaków specjalnych”
URL Safe Base64 używa - i _ zamiast + i /. To narzędzie domyślnie zachowuje te 4 znaki, ale jeśli ręcznie ustawisz bardziej restrykcyjną białą listę znaków (dozwalając tylko +/), wejście URL Safe zostanie zniszczone. Jeśli nie masz pewności co do zestawu znaków, wyłącz „usuwanie znaków specjalnych” i pozostaw tylko „usuwanie białych znaków”.
Jeśli po czyszczeniu nadal występuje błąd → sprawdź kodowanie i BOM
Jeśli po czyszczeniu atob() nadal zgłasza InvalidCharacterError, może to być spowodowane pozostałościami UTF-8 BOM (EF BB BF) lub kolejnością bajtów UTF-16. Opcja „usuwanie białych znaków” tego narzędzia nie jest przeznaczona dla BOM; zaleca się ponowne dekodowanie jako UTF-8 za pomocą TextDecoder w konsoli przeglądarki, a następnie ponowne czyszczenie.
Rozpoznawanie źródła BOM: plik txt zapisany w Windows
Jeśli Base64 pochodzi z pliku zapisanego jako UTF-8 w Notatniku Windows, pierwsze 3 bajty (EF BB BF) to BOM. Nawet po wyczyszczeniu białych znaków i nowych linii atob może nadal nie powieść się. Metoda obsługi: zapisz ponownie jako UTF-8 bez BOM za pomocą VS Code lub PowerShell.
Pokazuj porównanie przed i po czyszczeniu podczas nauczania i w dokumentacji
Czyszczenie Base64 to częsty problem podczas nauczania. Zaleca się podczas pisania dokumentacji dołączać Base64 przed i po czyszczeniu wraz z porównaniem liczby znaków i statusu dekodowalności, aby czytelnicy intuicyjnie rozumieli działanie każdej opcji.
Często Zadawane Pytania
Czy czyszczenie Base64 zmienia oryginalne bajty?
Nie. Czyszczenie usuwa tylko nieprawidłowe znaki (białe znaki, nowe linie, znaki niebędące Base64) i nie modyfikuje prawidłowych znaków pośrodku. Jeśli usuwane są tylko białe znaki i nielegalne znaki, zawartość bajtów przed i po czyszczeniu jest całkowicie identyczna. Jeśli zaznaczono „automatyczne dopełnianie paddingu”, = jest dołączane tylko na końcu, co nie wpływa na oryginalne bajty.
Jaka jest różnica między trzema opcjami czyszczenia?
Usuwanie białych znaków: usuwa \s \n \r \t (spacje, nowe linie, powroty karetki, tabulatory). Usuwanie znaków specjalnych: zachowuje tylko 66 prawidłowych znaków Base64: A-Z a-z 0-9 + / = - _. Automatyczne dopełnianie paddingu: dołącza = na końcu, aby długość stała się wielokrotnością 4. Trzy opcje są niezależne i można je łączyć.
Dlaczego atob() zgłasza InvalidCharacterError?
Częste przyczyny: ① Zawiera chińskie znaki, emoji Unicode lub inne znaki nie-ASCII; ② Zawiera nowe linie lub spacje (częsty przypadek kopiowania z Excela, wklejania z poczty); ③ Mieszane znaki Base64URL (- / _); ④ Długość nie jest wielokrotnością 4. Czyszczenie tego narzędzia rozwiązuje pierwsze 3 problemy, a narzędzie dopełniania paddingu rozwiązuje czwarty.
Czy czyszczenie usuwa padding?
Nie. = jest prawidłowym znakiem Base64, a opcja „usuwanie znaków specjalnych” tego narzędzia jawnie zachowuje =. Jeśli chcesz usunąć padding, użyj dedykowanego narzędzia padding (base64-padding) i przełącz się na tryb „usuwania dopełnienia”.
Jak wyczyścić zawierające nowe linie?
Domyślnie zaznaczona opcja „usuwanie białych znaków” to obsłuży. Znaki nowej linii (\n / \r\n) oraz tabulatory i spacje zostaną usunięte. Jeśli chcesz zachować nowe linie (format załączników MIME), wyłącz opcję „usuwanie białych znaków”.
Czy to narzędzie obsługuje UTF-8 BOM?
BOM (EF BB BF) to znak Unicode U+FEFF, a wyrażenie regularne \s \n \r \t używane przez „usuwanie białych znaków” tego narzędzia nie obejmuje U+FEFF, więc BOM może pozostać. Jeśli wystąpi InvalidCharacterError spowodowany BOM, zaleca się najpierw usunięcie BOM za pomocą TextDecoder w kodzie lub konsoli przeglądarki.
Czy znaki URL Safe i standardowego Base64 są wzajemnie konwertowane?
Nie. Opcja „usuwanie znaków specjalnych” tego narzędzia zachowuje wszystkie cztery znaki + / - _, tylko usuwa szumy bez aktywnej konwersji. Jeśli potrzebujesz wzajemnej konwersji URL Safe ↔ standardowe znaki, użyj dedykowanego narzędzia Base64URL (base64-url-safe).
Czy moja treść jest wysyłana na serwer?
Nie. Cała logika czyszczenia jest wykonywana lokalnie w przeglądarce, a oryginalny ciąg Base64 nigdy nie opuszcza Twojego urządzenia. Możesz bezpiecznie używać go do przetwarzania danych wrażliwych (poświadczenia, klucze, tokeny).
Czy można wyczyścić wiele segmentów Base64 naraz?
To narzędzie to interfejs do czyszczenia pojedynczego segmentu. Jeśli masz wiele segmentów Base64 do wyczyszczenia, zaleca się cykliczne wywoływanie logiki tego narzędzia lub użycie odpowiednich narzędzi wiersza poleceń (np. polecenia base64). Jeśli potrzebujesz kodowania/dekodowania wsadowego, użyj base64-batch-encode / base64-batch-decode.
Rozwiązywanie problemów
Po czyszczeniu atob nadal zgłasza błąd
Może to być problem długości (nie jest wielokrotnością 4) lub pozostałości BOM / kodowania. Najpierw upewnij się, że zaznaczono „automatyczne dopełnianie paddingu”; jeśli błąd nadal występuje, spróbuj ponownie zdekodować jako UTF-8 za pomocą TextDecoder w konsoli przeglądarki, usuń BOM, a następnie ponownie wyczyść.
Po czyszczeniu długość się zmieniła, ale dekodowanie nadal się nie powodzi
Oryginalna treść może nie być standardowym Base64, na przykład Base32 / Base58 / Base85. Potwierdź format kodowania oryginalnych danych i przełącz się na odpowiednie narzędzie. Możesz też spróbować przed atob przetestować, czy oryginalny ciąg można ponownie zakodować za pomocą btoa.
Po czyszczeniu znaków jest bardzo mało
Prawdopodobnie opcja „usuwanie znaków specjalnych” jest zbyt restrykcyjna i usunęła również + / - _. Sprawdź, czy nie wyłączono przez pomyłkę białej listy znaków; to narzędzie domyślnie zachowuje wszystkie 66 prawidłowych znaków Base64. Jeśli wejście to URL Safe, wyłącz „usuwanie znaków specjalnych”.
Po wklejeniu brak jakiegokolwiek wyjścia
Wejście może składać się wyłącznie z białych znaków (zawiera tylko spacje / nowe linie / tabulatory), a opcja „usuwanie białych znaków” tego narzędzia usunie je wszystkie, pozostawiając pusty ciąg. Sprawdź, czy oryginalne wejście zawiera co najmniej jeden znak Base64 (A-Z a-z 0-9 + / =).
Słownik
- UTF-8 BOM
- Znacznik kolejności bajtów. 3-bajtowy prefiks (0xEF 0xBB 0xBF) dołączany podczas zapisywania tekstu UTF-8 w systemie Windows, który sprawia, że dekoder Base64 traktuje pierwszy znak jako nieprawidłowy bajt.
- URL Safe Base64
- Wariant Base64 bezpieczny dla URL zdefiniowany w RFC 4648 §5, który zamienia + i / na - i _. Opcja „usuwanie znaków specjalnych” tego narzędzia zachowuje te 4 znaki, aby uniknąć ich przypadkowego usunięcia.
- Znak nowej linii
- \r\n (Windows) i \n (Unix / macOS). MIME Base64 załączników e-mail zazwyczaj zawiera podziały wierszy co 76 znaków, które należy usunąć podczas czyszczenia.
- Prawidłowe znaki Base64
- Standardowy zestaw znaków Base64 to A-Z, a-z, 0-9, +, /, = (padding) oraz - i _ z wariantu URL Safe, co daje łącznie 66 prawidłowych znaków.
- InvalidCharacterError
- Błąd dekodowania zgłaszany przez przeglądarkową funkcję atob(). Występuje, gdy ciąg Base64 zawiera znaki spoza tablicy prawidłowych znaków (chińskie znaki, spacje, symbole specjalne itp.).
Zestaw znaków Base64 i reguły zachowywania
Tabela prawidłowych znaków zachowywanych przez opcję „usuwanie znaków specjalnych” tego narzędzia.
| Typ znaku | Znaki | Reguła zachowywania |
|---|---|---|
Litery | A-Z, a-z | 52 znaki, zawsze zachowywane |
Cyfry | 0-9 | 10 znaków, zawsze zachowywane |
Symbole standardowego Base64 | + / | 2 znaki, zawsze zachowywane |
Symbole URL Safe | - _ | 2 znaki, zawsze zachowywane w scenariuszach URLSafe |
Padding | = | Dopełnienie na końcu, zawsze zachowywane |
Białe znaki | spacja, \n, \r, \t | Usuwane zgodnie z opcją „usuwanie białych znaków” |
Inne | chińskie znaki / emoji / BOM itp. | Usuwane zgodnie z opcją „usuwanie znaków specjalnych” |
5 typowych źródeł zanieczyszczeń Base64
Dowiedz się, jak nieprawidłowe treści są domieszane do ciągów Base64.
| Źródło zanieczyszczenia | Domieszana zawartość | Zalecana opcja |
|---|---|---|
Załączniki e-mail | \r\n co 76 znaków | Usuwanie białych znaków |
Wklejanie z Excela / bazy danych | Spacje / tabulatory na początku/końcu | Usuwanie białych znaków |
Pliki txt Windows | UTF-8 BOM (EF BB BF) | Usuwanie znaków specjalnych + ręczne usunięcie BOM |
URL / nazwy plików | Konflikt znaków + / | Zachowaj URLSafe (użyj konwersji base64-url-safe) |
Logi / wyjścia trace | Prefiksy/sufiksy debugowania | Usuwanie znaków specjalnych |
Porównanie 3 opcji czyszczenia
Trzy opcje są niezależne, nakładane na siebie, używaj ich łącznie według potrzeb.
| Opcja | Zachowanie | Typowy scenariusz |
|---|---|---|
Usuwanie białych znaków | Usuwa \s \n \r \t | Poczta / Excel / logi |
Usuwanie znaków specjalnych | Zachowuje tylko alfabet Base64 | Domieszane chińskie znaki / emoji / BOM |
Automatyczne dopełnianie paddingu | Dołącza = na końcu do wielokrotności 4 | Długość nie jest wielokrotnością 4 |
Authoritative References
- Bezpieczne porównanie ciągów znaków
- Konwersja binarna
- Szyfr Cezara
- Kod Morse'a
- Szesnastkowy
- Video do Base64
- Base64 na wideo
- Obraz na Base64
- Base64 na obraz
- Tekst na Base64
- Base64 na tekst
- Weryfikacja haszu pliku
- Plik na Base64
- Base64 na plik
- Audio na Base64
- Base64 na Audio
- Szyfrowanie i deszyfrowanie AES
- Szyfrowanie i deszyfrowanie DES
- Koder Dekoder Base32
- Base58 kodowanie i dekodowanie
- Kodowanie Base64
- Dekodowanie Base64
- Porównanie Base64
- Podział Base64
- Base64 łączenie wielu linii
- Formatowanie Base64
- Sprawdzanie formatu Base64
- Wsadowe kodowanie Base64
- Batchowe dekodowanie Base64
- Czyszczenie Base64
- Narzędzie paddingu Base64
- Statystyki długości Base64
- Base64 na szesnastkowy
- Konwerter Base64 DataURL
- Konwerter Base64-Hex
- Koder/Dekoder Base85
- Generator i weryfikator HMAC
- Derywacja klucza PBKDF2
- Skrót MD5
- Hash SHA-256
- Hash SHA-1
- Hash SHA512
- Narzędzie JWT
- Kodowanie i dekodowanie encji HTML
- Unikod - sekwencje ucieczki
- Kodowanie URL
- Base64 URL Safe
- MIME Base64
- Obfuskacja Java
- Obfuskacja JS
- Obfuskacja PHP
- Obfuskacja Python