ローカル開発サーバーでは正常に動作する Chrome Web midi インターフェイス (navigator.requestMidiAccess に基づく) を使用する Web サイトを構築しましたが、クラウド サーバーにプッシュすると、navigator.requestMidiAccess は関数ではないと言って失敗します。同じコード、同じブラウザ。関連するコードを含めてみます。
function initializeMidi() {
navigator.requestMIDIAccess()
.then(
(midi) => midiReady(midi),
(err) => console.log('Something went wrong', err));
}
window.onload = (event) => {
initializeMidi();
};
// this next function builds a list of radio buttons to select the MIDI device
function midiReady(midi) {
globalMidi = midi.outputs
parentElement = document.getElementById('midi-devices-div')
parentElement.innerHTML = ''
var lastMidiPortName = null
midi.outputs.forEach(function (port, key) {
addRadioButton(parentElement, port)
lastMidiPortName = port.name
})
var n = window.localStorage.getItem('selectedMidiPortName')
if (n)
{
var e = document.getElementById(n)
e.checked = true
}
}