我有一个快递服务器,它从我的其他服务器上抓取东西,进行编辑,然后使用curl
库将其发送给客户端(我尝试过request
,但它做了同样的事情)。一切正常,除非我尝试固定MP3文件。如果我尝试这样做,则Chrome无法解码MP3。但是,如果我从原始服务器访问MP3,它将解码正常并播放。我不编辑MP3。这是我的代码:
// server2.example.com source
const curl = require("curl");
const edit = (b, p) => {};
const express = require("express");
/* ... express app stuff ... */
app.get("*", (req, res) => {
curl.get(
"http://server1.example.com" + req.path, {},
(err, response, body) => {
if (err) return;
res.type(response.headers["content-type"]).status(response.statusCode).send(edit(body, patches));
}
);
});
app.listen(80);
再次取消编辑该文件,该文件与server1
上的文件完全相同。这是我访问server1.example.com/audio.mp3
与server2.example.com/audio.mp3
时看到的屏幕截图: