使用AWS AppSync进行输入验证

时间:2018-11-20 07:25:53

标签: amazon-web-services graphql aws-appsync

是否可以使用AWS AppSync进行输入验证而无需添加交互的另一个“层”?

我觉得添加lambda函数会破坏它的目的。

我想完成的是至少对字符串进行一些正则表达式验证。

如果没有,那么使用AppSync或类似解决方案(firebase)的人该怎么做?

1 个答案:

答案 0 :(得分:3)

如果仅是正则表达式验证,而不必对照数据源中的数据检查输入,则可以在解析程序请求映射模板中添加一些验证逻辑。

请参阅以下示例,检查输入字段是否与来自myvaliddomain.com的电子邮件匹配。如果验证无效,我们将中止该字段并对其进行错误处理。

#set($valid = $util.matches("^[a-zA-Z0-9_.+-]+@(?:(?:[a-zA-Z0-9-]+\.)?[a-zA-Z]+\.)?(myvaliddomain)\.com", $ctx.args.input))
#if (!$valid)
    $util.error("$ctx.args.input is not a valid email.", "ValidationError")
#end

## Rest of your request mapping template below