是否有一些"最佳实践"将 Angular 响应式表单与服务器端验证集成? 搜索,现在我只找到
https://www.puzzle.ch/de/blog/articles/2017/01/18/server-side-validations-with-angular-2
编辑
由于无法回答自己这个问题,被一些Stackoverflow的过分热心的用户关闭,我仍然建议研究JHipster(Angular/Spring应用程序的CRUD代码生成器(生成的代码,以用于客户端和服务器端验证的新实体。
首先,我将澄清为什么我们应该集成客户端和服务器端验证,主要有三个原因:
- 客户端验证不需要任何异步调用来验证信息。 用户体验更流畅。
- 出于安全原因,服务器端验证是义务。 服务器
- 端可以添加业务表单验证(您输入新用户,在服务器中您可以检查此用户 nam 是否尚未占用(。
然后关于你的问题。 在您的反应式表单上包含服务器端验证错误消息看起来是个好主意(尤其是对于上面的最后一个原因(。
为此,正如您的链接所建议的那样,您应该使用HTTP状态代码,它将帮助您对错误类型进行分类。然后你必须设计通用ErrorResponseBag
。例如(并且只是易于理解的示例(,MangoPay API具有以下用于错误报告的模式:
{
"resultCode" : 1234,
"ResultMessage" : "some message",
"MoreInformation" : "Optional extra information"
}
结果代码:是引用特定常量类型错误的数字。
然后很容易创建拦截每个HttpErrorResponse
并将其置于警报或其他任何状态的EasyErrorHandler
。
StackBlitz 中的 HttpInterceptor 示例
芒果支付来源
注意:如果您需要有关HttpInterceptor文件的更多信息,请免费询问我