我正在尝试将视频文件从谷歌应用引擎提供给iPhone。
如果我使用response.sendRedirect
作为下面的代码,一切都运行良好。
我可以从IE下载视频文件,在Safari上播放,甚至可以在iPhone模拟器上播放。
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws IOException {
response.sendRedirect("/jkl/iyou.mp4");
}
}
但是,如果我使用request.getRequestDispatcher("/jkl/iyou.mp4").forward(request, response)
,它只适用于IE浏览器。
如果我将response.setContentLength(711000)
添加到下面的代码中,它正在使用IE和Safari,但不适用于iPhone模拟器。
public class Test1Servlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws IOException {
response.setContentType("video/mp4");
try {
request.getRequestDispatcher("/jkl/iyou.mp4").forward(request, response);
} catch (ServletException e) {
}
}
}
我错过了什么?
测试可以在[1]看到:http://forwardtest33.appspot.com/。
你的帮助确实需要。
谢谢。