Если вы кодируете байты (с фиксированной длиной битов), то заполнение является избыточным.Это относится к большинству людей.
Base64 потребляет 6 битов за раз и создает байт из 8 битов, который использует только комбинации из шести битов.
Если ваша строка равна 1 байту (8 бит), вы получите 12 бит, как наименьшее число, кратное 6, в которое поместится 8, с дополнительными 4 битами.Если ваша строка составляет 2 байта, вы должны вывести 18 битов, с дополнительными двумя битами.Для кратных шести против кратных 8 вы можете иметь остаток 0, 2 или 4 бита.
Заполнение говорит, что игнорировать эти дополнительные четыре (==) или два (=) бита.Заполнение здесь сообщает декодеру о вашем заполнении.
Заполнение действительно не нужно, когда вы кодируете байты.Кодер base64 может просто игнорировать оставшиеся биты, которые составляют менее 8 бит.В этом случае лучше удалить его.
Заполнение может быть полезно для потоковой передачи и битовых последовательностей произвольной длины, если они кратны двум.Это также может быть использовано для случаев, когда люди хотят отправлять только последние 4 бита, когда осталось больше битов, если все оставшиеся биты равны нулю.Некоторые люди могут захотеть использовать его для обнаружения неполных последовательностей, хотя вряд ли это надежно для этого.Я никогда не видел эту оптимизацию на практике.Люди редко сталкиваются с такими ситуациями, большинство людей используют base64 для дискретных байтовых последовательностей.
Если вы видите ответы, предлагающие оставить его включенным, это не очень хорошее поощрение, если вы просто кодируете байты, это включает функцию длямножество обстоятельств у вас нет.Единственная причина, по которой он должен быть включен в этом случае, может заключаться в добавлении допуска к декодерам, которые не работают без заполнения.Если вы контролируете оба конца, это не проблема.