Файлы Soundfont js не загружаются на рельсы 4
Я немного новичок в рельсах (использую его около месяца), и у меня возникла проблема с попыткой загрузки некоторых ресурсов в процессе разработки. Ресурсы - это папка soundfont, которую я поместил в app/assets/javascripts. Он содержит акустическую_границу_пиано-mp3.js, акустическую_границу-пианино-ogg.js и папку с mp3-файлами. Проблема у меня возникает, когда я запускаю сервер и захожу на localhost:3000, страница загружается, но у меня возникает ошибка 404, которую не удалось загрузить акустическому_grand_piano-mp3.js, поскольку его не удалось найти. Я проверял орфографию несколько раз. Вот код js (из midi.js), который запускается при загрузке страницы:
window.onload = function () {
MIDI.loadPlugin({
soundfontUrl: "./soundfont/",
instrument: "acoustic_grand_piano",
callback: function() {
var delay = 0; // play one note every quarter second
var note = 50; // the MIDI note
var velocity = 127; // how hard the note hits
// play the note
MIDI.setVolume(0, 127);
MIDI.noteOn(0, note, velocity, delay);
MIDI.noteOff(0, note, delay + 0.75);
}
});
};
Есть идеи?
2 ответа
Недавно у меня была проблема с загрузкой файла активов svg из моего домена веб-хостинга Windows Server. Оказалось, что в панели администрирования IIS нужно было ввести пользовательский тип MIME для svg. (Это выглядело как ".svg", "image/svg+xml") До того, как этот пользовательский тип был введен, сервер выдавал 404, не найденных в файле. Может быть, то же самое случилось с вами?
Я боролся с этим некоторое время в своем собственном приложении, но недавно я нашел решение.
Создайте папку в общедоступной, например, общедоступной / звуковой. Поместите в него 3 стандартных MIDI-звука по умолчанию из папки soundfonts --oustic_grand_piano-mp3,oustic_grand_piano-mp3.js и oustic_grand_piano-ogg.js.
Теперь измените ваш soundfontUrl в MIDI.loadPlugin на "звуки /". Работает в разработке и производстве для меня.