python - Django 模板是否缓存在浏览器中?

标签 python node.js django angular

假设我们在 Django 中提出了一个请求,该请求呈现 my_template.html{foo: bar}

的上下文
 return render(request, "my_template.html", {foo: bar})

现在基于用户事件 foo 和 bar 变化。假设用户是否发出了他的第一个请求。 Django 将根据用户事件返回模板和相应的 {foo: bar}。假设用户是否使用不同的事件发出了第二个请求。

Django 是将 my_template.html 从服务器发送到浏览器,还是只将更改后的 context 发送到浏览器?模板是否缓存在浏览器中?

Case 1:

如果部署了一些更改的代码,模板被缓存在浏览器中,它会反射(reflect)在客户端的浏览器中吗?这是否以比较两个模板的 md5 散列的方式工作,如果它们不同步然后从 Django 服务器下载模板?

Case2

如果每次请求都渲染模板,那么是否意味着带宽使用情况不容乐观?

我读到在一个 Node 和 Angular 中,javascript 包被缓存在客户端浏览器中,并且只对服务器进行数据(context {foo: bar})调用,因此带宽使用率更好并且加载速度更快是真的吗。

最佳答案

Django 是一个服务器端框架。模板在发送到客户端之前在服务器中完全呈现。结果浏览器对模板一无所知;只有完全呈现的 html。

但是像这样比较 Django 和 Angular 是没有意义的。如果没有某种后端框架,您就无法单独使用 Angular,这很可能是 Django - 两者可以很好地协同工作。

关于python - Django 模板是否缓存在浏览器中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51159184/

相关文章:

python - 类和实例上的描述符行为差异

javascript - Underscore.js throttle 不起作用

javascript - 我应该从我使用 (Bluebird) promise 的代码中完全消除 try/catch 吗?

python - 如何在 python 中动态创建对象?

python - update_or_create 循环中仅更新/创建数据库中的一行

python - 导入错误 : No module named pip after trying to upgrade pip

c# - REQ/REP 模式中的 ZeroMQ FiniteStateMachineException

python - 使用 'fatal error: gnutls/gnutls.h: No such file or directory' 安装 pycurl

node.js - Nodejs undefined variable

python - 注册django后发送邮件确认