Идея
Обсуждение

Замена пробелов на плюсы

При скачивании вложения, содержащего в названии пробелы происходит "переименование" файла, так как пробелы эти легким движением руки превращаются в плюсы. У поддержки была запрошена схема и метод, в которых происходит данная замена. Ну и что выяснилось? 

Схема FileServices, метод GetResponseContentDisposition, строка:

processedFileName = "\"" + fileName + "\"; filename*=UTF-8''" + HttpUtility.UrlEncode(fileName);

вот тут и зарыта собака. Меняем это на 

 processedFileName = "\"" + fileName + "\"; filename*=UTF-8''" + Uri.EscapeUriString(fileName);

и все, забываем про плюсы. Проблема в том, что эта замена требует разблокировки базового пакета :( Проверяли на Хроме и Эдже - работает, в том числе с диакритикой. Ну вот почему бы не сделать в коробке?

9 комментариев

Такая замена сделана специально, чтобы избежать ошибок при скачивании файлов. Аналогично работает, например, выгрузка в Word в Atlassian Confluence. Напишите в поддержку и предложите свой вариант изменения, если считаете, что он работает лучше и не имеет побочных эффектов.

Вообще-то я и написал свой вариант изменения. Результат на скриншоте.

Теперь нужно проверить, всегда ли он работает корректно: разные имена файлов, ОС, браузеры.

это решалось так в рамках прикладной задачи

тестировать промышленно я не готов :)

Тогда ждите, пока это сделают специально обученныеwink разработчики «коробки». Если у них ещё нет примера, когда пробел работает хуже.

Да мне-то что? :) у меня решение есть. А кстати - решалось как раз для любителей алассиана, которым и там это поперек горла.

Саш, проверили и на Маке - работает как надо :)

Зверев Александр,

может стоит передать данное решение команде разработки, которая ответственная за данный функционал, а они уже решат корректно ли оно и заодно протестируют?

Показать все комментарии