角度和服务器端验证

时间:2018-06-17 05:56:53

标签: angular server-side server-side-validation

是否有一些“最佳实践”将Angular反应形式与服务器端验证相集成? 正在搜索,我现在只找到了

https://www.puzzle.ch/de/blog/articles/2017/01/18/server-side-validations-with-angular-2

修改

由于Stackoverflow的一些过分热心的用户无法回答这个问题,我建议查看JHipster(针对Angular / Spring应用程序的CRUD代码生成器)生成的代码,以了解客户端新实体的情况和服务器端验证。

1 个答案:

答案 0 :(得分:1)

首先,我将澄清为什么我们应该整合客户端和服务器端验证有三个主要原因:

  • 客户端验证不需要任何异步调用来验证信息。用户体验更顺畅。
  • 出于安全原因,服务器端验证是有义务的。
  • 服务器端可以添加业务表单验证(您输入新用户,在服务器中可以检查此用户nam是否尚未使用)。

然后关于你的问题。在您的被动表单上包含服务器端验证错误消息看起来很棒(特别是出于上述最后一个原因)。

为此,由于您的链接,您应该采用HTTP状态代码的冒险来帮助您对错误类型进行分类。然后你必须设计通用ErrorResponseBag。例如(并且只是示例易于理解),MangoPay API具有错误报告的下方模式:

{
    "resultCode" : 1234,
    "ResultMessage" : "some message",
    "MoreInformation" : "Optional extra information"
}

ResultCode:引用特定常量类型错误的编号。

然后很容易创建EasyErrorHandler拦截每个HttpErrorResponse并将其置于警报或其他任何地方。

Sample of HttpInterceptor in StackBlitz

source for mangopay

注意:如果您需要有关HttpInterceptor文件的更多信息,请免费询问我