Javascript 在客户端或服务器端呈现html的优缺点

Javascript 在客户端或服务器端呈现html的优缺点,javascript,php,html,asp.net-mvc,server-side,Javascript,Php,Html,Asp.net Mvc,Server Side,我需要知道客户端(JavaScript)或服务器端(PHP、C#、Java、Python、Cold Fusion等)呈现html页面的优缺点 那么安全性、性能和良好做法呢 提前谢谢 试试这个 服务器端HTML呈现: 最快的浏览器渲染 页面缓存可以快速提高性能 对于“标准”应用程序,许多UI功能都是预先构建的 有时被认为更稳定,因为组件通常要经过编译时验证 依靠后端专业技术 有时发展得更快* *当UI需求很好地适应框架时 客户端HTML呈现: 低带宽使用率 较慢的初始页面渲染。在现代桌面浏览器中甚

我需要知道客户端(JavaScript)或服务器端(PHP、C#、Java、Python、Cold Fusion等)呈现html页面的优缺点

那么安全性、性能和良好做法呢

提前谢谢

试试这个

服务器端HTML呈现:

最快的浏览器渲染

页面缓存可以快速提高性能

对于“标准”应用程序,许多UI功能都是预先构建的

有时被认为更稳定,因为组件通常要经过编译时验证

依靠后端专业技术

有时发展得更快*

*当UI需求很好地适应框架时

客户端HTML呈现:

低带宽使用率

较慢的初始页面渲染。在现代桌面浏览器中甚至可能不明显。如果您需要支持IE6-7或许多移动浏览器(mobile webkit不错),您可能会遇到瓶颈

首先构建API意味着客户端可以很容易地成为专有应用程序、瘦客户端、另一个web服务等

依靠JS专业知识

有时发展得更快**

**当UI基本上是定制的,具有更有趣的交互时。此外,我发现在浏览器中使用解释代码进行编码比等待编译和服务器重新启动要快得多

安全性:

您想要保护的任何数据操作都需要在服务器上完成。在客户端处理的任何数据都是绝对开放的,可以进行操作。例如,如果您有一个javascript函数,该函数处理一些信息,然后将这些信息发布回系统中——即使您具有示例性的后端安全性,也很容易在结果被发布回系统之前对其进行操作

服务器端验证将所有传入数据视为不可信数据,它是进入系统其余部分的网关。客户端验证有助于为最终用户提供流畅的体验,并尝试减少服务器的一些负载。两个选项都准备好了,你就可以完成上面所有的剩余工作了

但是,如果必须牺牲一个,那么客户端验证应该是一个选择。客户端提供了更好的用户体验和略低的服务器负载,但这是以牺牲服务器端验证解决的所有安全问题为代价的。从另一个角度看,服务器端验证可以防止可能导致您破产的问题,客户端验证可以改善体验

客户端

是–它可以防止具有良好意图的用户的坏值

是–它可以帮助善意用户更正其价值,而无需服务器往返的开销

否–当脚本无法加载时,它可以防止错误值(如jQuery)

否–它可以防止恶意编辑web表单(开发人员工具)导致的错误值

否–它可以防止直接提交到端点的错误值(例如:跨站点请求伪造)

否–它可以防止在帧中访问错误值

否–通过中间人攻击更改数据时,它可以防止错误值

服务器端

这与客户端方法相比有什么不同?

是–它可以防止具有良好意图的用户的坏值

否–它可以帮助善意用户更正其价值,而无需服务器往返的开销

是–当脚本无法加载时,它可以防止错误值(如jQuery)

是–它可以防止恶意编辑web表单(开发人员工具)导致的错误值

是–它可以防止直接提交到端点的错误值(例如:跨站点请求伪造)

是–它可以防止在帧中访问错误值

是–它可以防止通过中间人攻击更改数据时出现错误值

参考:


这与编程没有太大关系,但您可以参考许多此类答案,例如,或它是一个好答案,但关于安全性呢?我已更新了我的答案,请检查并让我知道谢谢。。。现在你的答案已经很完整了。