gpt4 book ai didi

java - 从 url 获取文件并将其发送给用户的 Servlet

转载 作者:行者123 更新时间:2023-11-28 23:42:38 25 4
gpt4 key购买 nike

所以我对 Javax Servlet 比较陌生,我应该在工作中修改一些代码。根据公司的要求,我不能在这里发布我的代码。所以基本上我在一个服务器上设置了一个服务器云服务,我在该服务器上部署了我的应用程序。当我运行我的应用程序时,用户可以输入:8080/appname/resources/filename。在代码中,文件名将带我到位于CDN网络。我如何通过servlet回放给用户?因为它不直接驻留在我的服务器上,而是被定向到其他地方。我会尝试写一个简单的例子来解释我的意思

procesRequest(HttpServletRequest request, HttpServletResponse reponse){
String requestFile = request.getPathInfo();
File file = new File(basePath,URLDecoder.decode(requestedFile, "UTF-8"));
RandomAccessFile input = new RandomAccessFile(file, "r");
OutputStream output = response.getOutputStream();

playBack(input, output);
}

playBack(RandomAccessFile input, OutputStream output){
byte[] buffer = new byte[DEFAULT_BUFFER_SIZE];
int read;
while ((read = input.read(buffer))>0)
{
output.write(buffer, 0, read);
}
}

所以在上面的例子中,文件将驻留在服务器本身。 basePath 指的是服务器上存储所有文件的文件夹。所以它只能播放文件。但是,我想修改它,而不是在服务器上获取文件,而是从 url 获取文件并播放它。现在我只是将 URL 硬编码用于测试目的。

最佳答案

向该服务器发出请求,然后返回从该服务器获得的响应。如果您有一个在该服务器上运行的 Web 应用程序可以接受您的请求,找到该文件并将响应返回给您。

关于java - 从 url 获取文件并将其发送给用户的 Servlet,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18023533/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com