您的浏览器不支持 Web MIDI API - Google Chrome on Mac - 当本地代码为 运行

The Web MIDI API is not supported by your browser - Google Chrome on Mac - when code is run locally

各位,

我正在尝试开发一个简单的 Web MIDI 应用程序。

我已经查了一下,发现 Google Chrome 是唯一支持此功能的浏览器。所以,我安装了这个,但我仍然得到这个。

WebMidi could not be enabled Error: The Web MIDI API is not supported by your browser. at WebMidi.enable (webmidi.min.js:30) at script.js:430 (anonymous) @ script.js:432 WebMidi.enable @ webmidi.min.js:30 (anonymous) @ script.js:430 Promise.then (async) (anonymous) @ script.js:154

Mac - 10.15.2 Chrome - 79.0.3945.117

照此 link - https://www.midi.org/17-the-mma/99-web-midi , Chrome 肯定有支持。

重要说明 - 如果我 运行 代码直接在 codepen 上,它工作得很好。所以浏览器正在工作。但是当我尝试在本地 运行 时,我得到了错误。

https://codepen.io/teropa/pen/JLjXGK

  WebMidi.enable(err => {
    if (err) {
      console.error('WebMidi could not be enabled', err);
      return;
    }

我在这里错过了什么?这是 chrome 问题还是 Mac 问题或某些权限问题。或者,我需要在本地制作 MIDI 代码 运行 吗?

我正在使用此服务器 https://www.npmjs.com/package/http-server,在本地 运行 代码。

(我查看了其他问题,但没有在 Mac 上找到任何与 Chrome 相关的内容)

我在 10.12.6 上使用了带有 Chromium 和 Opera 的 web-midi,所以我不会说 Chrome 是 只有 有 web 的浏览器-midi.

对于 Opera,我认为我必须启用实验性功能:

chrome://flags/#enable-experimental-web-platform-features

也许看看 Chrome 是否也需要它? 或者这可能只是 10.15 中所有锁定的副作用?

如果从 0.0.0.0 为开发站点提供服务,您将不会在浏览器中获得任何 MIDI,但是当从 127.0.0.1 加载时,它应该可以工作(正如上面用户 Alex 所评论的)