使用Hasura作为数据访问层的最佳和正确方法是什么

时间:2019-10-03 15:43:30

标签: graphql nestjs hasura

我只想将Hasura用作NestJs GraphQL服务器后面的数据访问层,并保留Hasura的所有优势,尤其是具有订阅功能的实时功能。

这个想法是在与Hasura进行交互之前,构建一个更加自定义的API并处理所有业务逻辑。

这样做,由于我必须使用Nestjs服务器的x-hasura-admin-secret连接到Hasura服务器,我是否必须在Nestjs层上自己进行安全访问? 您认为使用Hasura是个好方法吗?

还有其他替代方法将Hasura用作可伸缩体系结构中的数据访问层吗?

谢谢

1 个答案:

答案 0 :(得分:0)

您当然要对NestJS层的安全性负责,但我想您的意思是身份验证。如果是这样,那么这完全取决于您打算使用哪种身份验证。

如果您希望使用JWT或Webhooks实施身份验证(有关说明,请参见此article),我建议让Hasura来处理它,在这种情况下,您的附加层将转发请求到Hasura无需提供X-Hasura-Admin-Secret

据我所知,人们正在使用其Remote Schemas功能为他们已经存在的或公共的GraphQL API添加“ Hasura层”,以完成Schema Stitching

我们可以进一步了解您为什么要添加图层吗?我很确定Hasura提供了定义自定义查询和聚合查询的方式,并且根据我的经验,我提供了充足的查询/突变。此外,它还提供了您可能会发现有趣的其他功能(订阅,事件...)