关于springboot传blob数据到前端并包装资源到audio实现播放

记录一下自己在写代码时候遇到的问题

由于咱们的音频数据是以blob类型存储的mysql数据库中的,当我们将它提取到java中的时候需要用byte[]来接收,

但是要怎么发送到前端,并且前端可以使用呢?(我是小白)

下面贴出controller中的代码:

①String responseType = "audio/" + fileName.split("\\.",2)[1] + ";charset=utf-8";

1号代码的意思是 设置响应数据的格式,因为我们的文件类型有很多种,()这里我们以音频数据为例,音频数据有熟知的mp3、flac、wav等类型)同时也要设置编码格式,将它塞入响应头中。最后将数据返回

这是前端的一个根据选中去后台申请数据

这里用async是为了在调用getMusic()的时候要等它完成再执行后面的内容

注意:responseType要设置为blob类型

上面的代码是临时的

步骤

1.将byte[] 数据转换为blob对象类型

const blob = new Blob( [ 要转换的数据] , { type:'参数类型(如audio/flac)' })

2.将blob对象转换为URL对象

const url = URL.createObjectURL(blob)

这样就可以使用啦

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值