tomcat:将swf加载到页面中
在我的页面中加载 SWF 文件的推荐方法是什么?
只是使用 HttpServletResponse.getWriter 并用它打印 SWF 对象,或者是否有更有效的方法?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
在我的页面中加载 SWF 文件的推荐方法是什么?
只是使用 HttpServletResponse.getWriter 并用它打印 SWF 对象,或者是否有更有效的方法?
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(1)
如果它是静态 SWF 文件,只需将其放置在可公开浏览的路径中并允许 Tomcat 将其作为静态文件提供。如果要动态生成 SWF 文件,Content-type HTTP 标头设置为
rel="nofollow noreferrer">
ServletResponse.getWriter()
就完全没问题应用程序/x-shockwave-flash
。您可以在写入输出流之前执行此操作ServletResponse.setContentType()
像这样:您可能还需要考虑设置一些与 HTTP 缓存相关的标头,例如 <如果您希望浏览器能够缓存您的 SWF 文件,请使用 code>Cache-Control 和
Expires
。您可以使用HttpServletResponse.setHeader()
或HttpServletResponse .addHeader()
。对于静态 SWF 文件,您必须在Filter
映射有
。值得一提的另一点是,以跨浏览器友好的方式引用 SWF 内容,绕过恼人的 某些版本的 MSIE 中的额外点击行为已成为某种黑魔法。我建议使用 SWFObject 库(托管在 Google 代码上)来消除丑陋。
If it is a static SWF file, simply place it in a publicly browsable path and allow Tomcat to serve it as a static file. If you are generating an SWF file dynamically,
ServletResponse.getWriter()
is perfectly fine as long as you remember to set theContent-type
HTTP header toapplication/x-shockwave-flash
. You can do that just before writing to the output stream withServletResponse.setContentType()
like this:You may also want to think about setting some HTTP caching related headers such as
Cache-Control
andExpires
if you want browsers to be able to cache your SWF files. You can do that withHttpServletResponse.setHeader()
orHttpServletResponse.addHeader()
. For the case of a static SWF file, you will have to set caching headers in aFilter
mapped with a<url-pattern>
.Another point worth mentioning is that referencing SWF content in a cross browser friendly way that bypasses an irritating extra-click behavior in some versions of MSIE has become some kind of black magic. I recommend using the SWFObject library (hosted on Google Code) to abstract the ugliness away.