【发布时间】:2019-04-30 20:39:52
【问题描述】:
所以我试图模仿这个网站的设置:
http://www.ntonyx.com/mp3files/Morning_Flower.mp3
当像 chrome 这样的浏览器访问这个确切的 url 时,基本上会出现一个播放器,您可以“流式传输”音乐。
import java.io.IOException;
import java.io.OutputStream;
import java.net.InetSocketAddress;
import com.sun.net.httpserver.HttpExchange;
import com.sun.net.httpserver.HttpHandler;
import com.sun.net.httpserver.HttpServer;
public class WebServer {
public static void main(String[] args) throws Exception {
HttpServer server = HttpServer.create(new InetSocketAddress(8000), 0);
server.createContext("/test/file.mp3", new MyHandler());
server.setExecutor(null); // creates a default executor
server.start();
}
static class MyHandler implements HttpHandler {
@Override
public void handle(HttpExchange t) throws IOException {
String response = "This is the response";
t.sendResponseHeaders(200, response.length());
OutputStream os = t.getResponseBody();
os.write(response.getBytes());
os.close();
}
}
}
我正在尝试使用一些简单的 java 代码来模拟这一点。我正在努力弄清楚我应该如何格式化以这种方式出现的请求。有没有办法将存储在我的驱动器上的本地文件发送到请求?我一直在努力寻找如何做到这一点的例子
【问题讨论】:
-
您可以将 mp3 文件的字节转储到流中。然后大多数浏览器会缓冲它以供播放。
-
天哪,我不知道该怎么做