0

vue+cli 里面用binary提交方式怎么提交wav数据?
第一次见到这种提交方式,在axios里面怎么写?
blob:http://localhost:8080/40570440-1402-4cd6-ac86-98aca0be75f8这是我录音返回的wav,不知道怎么用binary提交。。。

clipboard.png
这张图是wit.ai post/speech请求的要求格式,实在是看不懂怎么写请求

RONG 43
2019-01-22 提问
4 个回答
0

已采纳

只要:

import {encodeWAV} from 'recorderx';
var pcm = this.rc.getRecord();
const blob = encodeWAV(pcm,16,44100)

axios({
  url: 'https://api.wit.ai/speech?v=20171010',
  method: "post",
  data:blob,
  headers: {
    'Content-Type': 'audio/wav',
    'Authorization': 'Bearer xxxx(这是token)',
  }
}).then(function(res) {
  rc.close();
})

就行了
通过向recorderx的作者提问,终于解决了我的问题,非常感谢他

0

转成blob再提交

0

网上的例子是下面这样的,你可以尝试一下

axios({
  method: 'post',
  url: 'https://upload.qiniup.com/putb64/-1',
  headers: {
    'Content-Type': 'application/octet-stream' // 注意这里的content-type
  },
  data: imgSrc.split('base64,')[1] // 直接传递内容 在你这里 就把wav数据转换成base64格式
})
0

blob 是二进制对象。

const formData = new FormData()
formData.append('file', blob)

撰写答案

推广链接