所以我一直用GraphQL构建我的新应用程序 . 它适用于修改我的应用模型 . 但我发现GraphQL的工作方式存在严重漏洞,REST API处理得更好 . 例如,这是我的用例:

  • 当提交我的前端表单时,它会创建一个变异: createFoo .

仅这一点很有效 . 它在我的数据库中创建一个新的Foo对象 . 但是现在我有了这个额外的用例:

  • 提交表单时,我想点击一个服务,不仅在我的数据库中创建一个Foo对象,而且我还想点击第三方API(我正在使用的某个服务)通知我新的创建 .

我该如何实现这一目标?使用REST API,我只需将该附加任务添加为API endpoints 的一部分 . 使用GraphQL,没有服务层的概念可以执行其他业务逻辑 . 我应该在突变中这样做吗?将一些额外的业务逻辑添加到创建对象的突变中似乎是一种奇怪的副作用 . 在GraphQL世界中如何考虑这些事情?