0

我正在通过 AudioWorklet.addModule(githubUrl) 从 Github 加载示例模块来测试一些音频工作集代码。但是,当我查看开发人员设置中的网络选项卡时,我没有看到对 Github 的网络请求。我知道它正在发出请求,因为在我切换到使用 raw.githubusercontent 地址之前它给出了一个 CORS 错误(现在它正在给出Uncaught (in promise) DOMException: The user aborted a request)。我希望能够检查网络调用返回的内容,以便帮助诊断问题。

4

1 回答 1

1

Chrome 中似乎存在一个错误,该错误会阻止网络请求显示在开发工具中。我认为为此提交一个错误是个好主意。

现在你可以只使用 Firefox。它在开发工具中显示网络请求。

如果您想继续使用 Chrome,您可以代理您的请求,fetch()使其出现在开发工具中。

而不是直接调用addModule()...

context.audioWorklet.addModule(url)

...您可以先获取源,然后将其包装到对象 URL 中。

fetch(url)
    .then((response) => response.text())
    .then((text) => {
        const blob = new Blob([text], { type: 'application/javascript; charset=utf-8' });
        const objectUrl = URL.createObjectURL(blob);

        return context.audioWorklet.addModule(objectUrl)
            .finally(() => URL.revokeObjectURL(objectUrl));
    })
于 2020-10-18T10:00:26.017 回答