我对Websocket比较陌生。在尝试回声和广播之后,我正在尝试从websocket服务器渲染音频消息以在客户端显示。我的websocket服务器看起来像这样:
@OnMessage
public void hello(String img, Session session) {
File fi = new File("/Users/admin/NetBeansProjects/WebApplication1/web/horse.mp3");
byte[] fileContent=null;
try {
fileContent = Files.readAllBytes(fi.toPath());
ByteBuffer buf = ByteBuffer.wrap(fileContent);
session.getBasicRemote().sendBinary(buf);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} }
客户端代码:
function drawImageBinary(blob) {
var bytes = new Uint8Array(blob);
var img = document.getElementById("testid");
img.src = window.URL.createObjectURL(bytes);
}
..
<audio controls>
<source src="" id="testid" type="audio/mpeg">
</audio>
但这似乎不起作用。当我发出警报时,我正确地从服务器接收数据。但它没有设置为src标签。谁能告诉我这里我做错了什么?