Как сохранить утомленные символы в имени файла

Я создавал веб-сайт, на котором пользователь может загружать файлы на aws-s3, minio а также azure-storageвсе работает нормально,

Но когда мой клиент загружает файлы с именем, которые содержат символы, подобные этим,

AAÀÃÁÆÂÅÄÞC?ÇÈEÉËÊGGIÏÎÍÌLLÑNØÓÒÔÕÖSS?Š?TÙÛÚÜÝZŽZâaaáaãA??åà??A?aäæ?????þcCCcç??c?Cc???dddÐdDddd?d?dðd?????eeeEEeeE?Eê?èëé?fƒf?fggGgGgGg?g?ggggg?g?g?ggg?h?HHh??îïíìiiiI?iiII?I??I???i?j?j?j?jJjjj?j?j?j?j?j?j?j?j?k?kKk?k?kkk?k?l?l?lllllllLlLl?lLlll?l????ñ?N????n?n?Nn??oõôOoOOoø?oò?OoóOœŒö?????qrrRrR?R????Sšs?s?s????ß?t?t?tTt?t?tTtTt™tu?UuUuUUuUuUUuuUUuUùúû?uuUUuuü?v?v?v?wwwWw?yýÿŸY?ž??z?z??~.[]{}()@!#$%^&*+|¦„®©

или аналогично этим, эти символы становятся головной болью, как и файл, успешно загруженный, но при извлечении его из источников он не отображается на странице HTML, а отображается только испорченное изображение.

Я преобразовал эти символы в настоящие алфавиты (пример: ‘Ĵ’ => ‘j’, ‘Ĉ’ => ‘c’, ‘ǎ’ => ‘a’), но теперь мой клиент хочет сохранить эти символы такими, как есть, и когда пользователь скачал файл, им нужно такое же имя файла, как они загружены,

В бэкэнде я использую PHP и база данных PostgreSQL,

Как я могу решить эту проблему.

0

Решение

Вы не можете использовать эти символы в названии блоба. Увидеть эта статья о присвоении имен и ссылок на BLOB-объекты. Что вы можете попробовать, так это сохранить оригинальное имя в свойстве [metadata] после загрузки большого двоичного объекта и получить его при загрузке или обращении к большому двоичному объекту.

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]