我对rails很新(已经使用了大约一个月),而且我在尝试在开发中加载一些资源时遇到了问题。资产是一个声音文件夹,我放在app / assets / javascripts中。它包含acoustic_grand_piano-mp3.js,acoustic_grand_piano-ogg.js和mp3文件的文件夹。我遇到的问题是当我运行服务器并转到localhost:3000时,页面加载,但是我发现了404错误,因为无法找到acoustic_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);
}
});
};
有什么想法吗?
答案 0 :(得分:0)
我最近在从Windows Server Web托管域加载svg资产文件时出现问题。事实证明,在IIS管理面板中,必须输入svg的自定义MIME类型。 (看起来像“.svg”,“image / svg + xml”)在输入此自定义类型之前,服务器在文件上找不到404。也许同样的事情发生在你身上?
答案 1 :(得分:0)
我在自己的应用程序中一直在努力解决这个问题,但我最近找到了解决方案。
在public中创建一个文件夹,例如public / sounds。在其中放置来自soundfonts文件夹的3个默认默认MIDI声音 - acoustic_grand_piano-mp3,acoustic_grand_piano-mp3.js和acoustic_grand_piano-ogg.js。
现在将MIDI.loadPlugin中的soundfontUrl更改为"发声/"。为我开发和生产。