Node.js 试着用nodejs播放mp3?
我正在尝试使用nodejs提供mp3文件。我使用的浏览器是谷歌浏览器。 提供文本起作用,但当我更改内容标题以表示我要提供mp3时,它会显示一个不播放的播放按钮 以下是Node.js 试着用nodejs播放mp3?,node.js,google-chrome,express,mp3,Node.js,Google Chrome,Express,Mp3,我正在尝试使用nodejs提供mp3文件。我使用的浏览器是谷歌浏览器。 提供文本起作用,但当我更改内容标题以表示我要提供mp3时,它会显示一个不播放的播放按钮 以下是curl-v给我的信息的开头: * About to connect() to localhost port 2222 (#0) * Trying 127.0.0.1... * Connected to localhost (127.0.0.1) port 2222 (#0) > GET /
curl-v
给我的信息的开头:
* About to connect() to localhost port 2222 (#0)
* Trying 127.0.0.1...
* Connected to localhost (127.0.0.1) port 2222 (#0)
> GET / HTTP/1.1
> User-Agent: curl/7.29.0
> Host: localhost:2222
> Accept: */*
>
< HTTP/1.1 200 OK
< X-Powered-By: Express
< Content-Type: audio/mpeg
< Content-Length: 14180
< ETag: "336505275"
< Date: Mon, 02 Dec 2013 10:20:03 GMT
< Connection: keep-alive
<
��8��R�$s�PFP��0m(X�
���
�ep�8���Bg*&dXȯ��"�2.���c��7�f����G�
你能给我们看一下你的服务器代码的相关部分,谷歌Chrome中控制台和网络标签的输出吗?嗨,保罗。我用服务器代码的相关部分更新了我的问题。谢谢。
错误
未定义吗?如果是,我想这与Chrome及其对HTTP头的处理有关。我在浏览器中没有看到错误,但如果我在控制台中查看,我会看到以下消息:资源被解释为文档,但使用MIME类型音频/mpeg传输:“”。mp3被解释为文档这一事实可能是问题的一部分吗?请尝试以.mp3
结尾的路由,例如http://localhost/test.mp3
和app.get('/test.mp3',function(){…
.Chrome
express = require('express');
var app = express();
app.get('/', function (request, response) {
var exec = require('child_process').exec,
child;
child = exec('espeak -v mb-fr1 -q --pho -a 15 -p 50 -s 130 "donc ceci démontre que ça fonctionne bien" | mbrola /usr/share/mbrola/fr1/fr1 - - | lame -r -m m -b 24 -s 16 - - ',function (error, stdout, stderr) {
response.setHeader('Content-Type', 'audio/mpeg');
//response.setHeader('Transfer-Encoding', 'chunked');
response.send(stdout);
});
});
module.exports = app;