根据用户的浏览器版本提供不同版本的文件

时间:2015-10-13 19:53:34

标签: jquery python flask

我的应用程序的前端旨在与非常旧的浏览器一起使用。我想升级到Bootstrap 3和JQuery 2,但我不想停止支持旧的浏览器。如何根据用户的浏览器提供旧版本或新版本?我应该这样做吗?我基本上需要每个脚本,模板和视图的两个版本吗?

2 个答案:

答案 0 :(得分:0)

看看requirejs。使用requirejs,您应该能够编写一些逻辑,根据浏览器提供不同版本的文件

答案 1 :(得分:0)

我建议您推迟对旧版浏览器的支持,并针对前向引擎进行开发。原因是您可能需要花费3周的时间来添加对几个月后将被弃用的IE版本的支持。还有额外的努力!

您应该能够针对具有不同版本的相同依赖项运行构建工具。

如果你使用npm,那么你可以简单地分发两个不同的package.json文件,edge.jsonlegacy.json,然后是符号链接,安装依赖项并分别构建适当的静态资源

肮脏的例子:

git clone --reference app edge
git clone --reference app legacy

ln -s edge/edge.json edge/package.json
ln -s legacy/legacy.json legacy/package.json

现在,在Flask中,您必须嗅探用户代理,解析它是边缘浏览器还是旧版浏览器,然后返回一个HTML文档,该文档将引用相应根目录中的资产。然后,您应该在回复标题中设置Vary: User-Agent