微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

NestJS Schema First GraphQL 序列化

如何解决NestJS Schema First GraphQL 序列化

我对 nestJS/GraphQL 的响应序列化主题进行了一些研究。可以找到一些有用的信息 here,但文档似乎完全专注于代码优先方法。我的项目恰好采用了模式优先的方法,从我从几个来源阅读的内容来看,模式优先项目可用的选项是为解析器实现拦截器,并在那里执行序列化。

在我跑掉并开始编写这些拦截器之前,我的问题是这样的; nestjs 是否提供了更好的选项来实现模式优先方法的序列化?

解决方法

如果它只是值的转换,那么拦截器是一个很好的工具。就框架的高级思想(拦截器、管道、过滤器等)而言,为“代码优先”显示的所有内容都应适用于“模式优先”。事实上,一旦服务器开始运行,这两种方法之间以及它们的运行方式就不应该有明显的区别。您需要关注的重要事情是您将无法轻松利用 class-transformerclass-validator,因为原始类定义是通过 gql-codegen 创建的,但如果您愿意,您仍然可以扩展这些类型并添加必要的装饰器。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。