JavaScript中的业务逻辑

时间:2016-10-24 07:19:56

标签: c# asp.net angularjs stored-procedures

目前,我正在一个项目中工作。我只是关注我的老同事正在做的事情;他们使用的是ASP.NET(c#)和angularjs。我很惊讶他们的所有业务逻辑都是在JavaScript部分计算的,只是使用c#部分来传达数据库。仅供参考,我们一直在使用存储过程。这真的是构建系统的好方法吗?我想打开这个也许这不是一个好习惯,但我没有任何有力的理由,因为我来自PHP世界。

2 个答案:

答案 0 :(得分:2)

出于多种原因,应避免将业务逻辑放在JavaScript中:

  1. 设计:大多数情况下,业务层应该位于服务器上,只有UI层,即HTML / JavaScript应该由客户端使用。
  2. 安全性:公共领域的知识越多,对应用程序构成威胁的可能性就越大。
  3. 维护:与在JavaScript中嵌入业务逻辑相比,可以更有效地重用业务对象。我经常看到每个.aspx页面都有自己的JavaScript文件集。这可能并不总是成立。

答案 1 :(得分:1)

我们对您的业务知之甚少,无法全面评估这有多糟糕,但听起来很糟糕。

首先,您可以根据每次请求将整个业务逻辑发送给客户和竞争对手。

最大的缺点当然是您被迫假设所有业务逻辑都已执行。客户端发生的一切都很容易被客户端篡改。

您是说没有服务器端执行任何业务规则?如果您收到库存中所有商品的订单,价格设置为1美元,您只需接受该商品,运送商品并向客户开具1美元的发票吗?

相关问题