Веб-плеер не воспроизводит файлы с символами, отличными от ASCII

Наше приложение позволяет пользователям загружать видео.

Я заметил, что как только кто-то загружает видео с буквой «é» в имени файла, видео не воспроизводится.

Например, "fooébar.flv". Вопрос в том. Должен ли я сохранять имена файлов с этими символами или я должен отфильтровывать эти символы? В противном случае, должен ли я найти способ для моего проигрывателя воспроизводить имена файлов с символами, отличными от ASCII?

Я использую JWPlayer, кстати, для воспроизведения мультимедиа на нашем сайте.

ИЗМЕНИТЬ

Я подписался на http://www.longtailvideo.com/support/jw-player/jw-player-for-flash-v5/16002/embedding-with-international-characters, который, похоже, работает с:

encodeURIComponent(encodeURI("path_to_file"))

person Christian Fazzini    schedule 02.10.2011    source источник
comment
Какую версию Руби вы используете?   -  person Russ Clarke    schedule 02.10.2011
comment
Что произойдет, если вы войдете на сервер и попытаетесь воспроизвести один из этих файлов локально? Кроме того, можете ли вы опубликовать код, в котором вы создаете URL-адрес для воспроизведения JWPlayer? Источник HTML, если это возможно.   -  person Russ Clarke    schedule 02.10.2011
comment
@RussC смотрите мое редактирование выше. Файл воспроизводится на локальном сервере. Извините, не могу опубликовать URL, так как это коммерческий продукт.   -  person Christian Fazzini    schedule 02.10.2011
comment
Вам не нужно публиковать URL-адрес; но можете ли вы опубликовать HTML-код, сгенерированный вашим приложением, когда JWPlayer связан с файлом с символом, отличным от ascii? Вы, вероятно, сами увидите ошибку, я подозреваю, что Ruby неправильно кодирует имя файла, поэтому вместо href=fooébar.flv вы получаете href=fooAEbar.flv или что-то в этом роде.   -  person Russ Clarke    schedule 02.10.2011
comment
@RussC http://foobar.com/uploads/users/1/songs/1/fooébar.flv   -  person Christian Fazzini    schedule 02.10.2011
comment
Если вы исправите эту ссылку для своего домена, будет ли она работать, если вы введете ее в адресную строку браузера?   -  person Russ Clarke    schedule 02.10.2011
comment
Да, он работает и в браузере с кодом, отличным от ASCII. Ссылка в моем редактировании позволяет мне воспроизводить имена файлов, отличные от ASCII. Теперь вопрос в том, должен ли я разрешать пользователям сохранять файлы с не-ASCII-символами в имени файла или я должен выполнять какую-то фильтрацию?   -  person Christian Fazzini    schedule 02.10.2011
comment
Я бы позволил им сохранять символы, отличные от ascii, вы не хотите усложнять загрузку для ваших пользователей.   -  person Russ Clarke    schedule 02.10.2011
comment
@RussC Спасибо, точно мои мысли. Если вы поместите свой последний комментарий в качестве ответа, я могу его рассмотреть   -  person Christian Fazzini    schedule 04.10.2011


Ответы (2)


В соответствии с запросом оператора в комментариях:

Я бы позволил им сохранять символы, отличные от ascii, вы не хотите усложнять загрузку для ваших пользователей.

person Russ Clarke    schedule 04.10.2011

Мы решили это так:

file_path = <%= "http://localhost/#{CGI.escape( URI.escape( 'File name with extra charaters like & áéű' ) )}" %>
person bonyiii    schedule 07.08.2012