【问题标题】:Using Simple Webaudiorecorder.js in R/Shiny and posting the recording to the server在 R/Shiny 中使用 Simple Webaudiorecorder.js 并将录音发布到服务器
【发布时间】:2019-10-29 06:06:11
【问题描述】:

我正在使用 WebAudioRecorder.js 在 R Shiny 应用程序中进行在线录音,请参阅:

https://github.com/addpipe/simple-web-audio-recorder-demo

作为一种格式,我选择了wave格式,在JavaScript代码中,记录是以blob形式获取的。我希望程序在没有任何对话框的情况下将此 blob 保存在服务器上。

【问题讨论】:

  • 是保存在本地还是上传到服务器?
  • 您不能将内容发布到 blob url...

标签: javascript shiny xmlhttprequest blob wav


【解决方案1】:

这里,你不应该在javascript中设置hole filePath,你应该给它一个文件名,然后php应该把它放在正确的文件夹中。

function uploadWaveBlob (blob, encoding) {
  var xhr = new XMLHttpRequest();
  var formData = new FormData();
  var fileName = Date().toISOString() + '.' + encoding;

  formData.append("Wav", blob, fileName);

  xhr.open('POST', uploadUrl);

  xhr.onload = function () {
    console.log('xhr complete');
  };

  xhr.send(formData);
}

想象一下,如果我会上传一些喜欢/etc/hosts 或其他东西的东西

【讨论】:

  • 处理文件上传的 php 脚本的 URL
【解决方案2】:

以下网站提供的代码展示了如何将 blob 上传到服务器:

https://gist.github.com/primaryobjects/d6cdf5d31242a629b0e4cda1bfc4bff9

完整的解决方案可在:

https://github.com/heeringa0/simple-web-audio-recorder

并展示了如何将 Simple WebAudioRecorder.js 集成到 R Shiny 应用程序中,并将录音保存到服务器。

【讨论】:

    猜你喜欢
    • 2012-11-08
    • 2018-07-29
    • 1970-01-01
    • 2021-05-28
    • 1970-01-01
    • 2018-10-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多