如何在Hotchocolate 10.4.3中设置执行超时



我们将Hotchocolate 10.4.3用于我的.net核心服务。我们使用的是代码优先的方法。所有设置都在startup.cs中,与他们的星球大战示例完全相似。Hotchocolate网站说请求的默认超时时间是30秒,但我发现我的应用程序在1分钟后抛出了Transaction错误。我想增加到2分钟。

还有为什么服务器在超时异常后仍然执行所有操作。在我所有的代码都得到正确执行之后,我总是在最后看到Transaction错误。

如果一切都能正常运行,为什么还要抛出错误?

我还在学习graphql。如果有什么不正确的地方,请纠正我。

在HotChocolate v10中,当您在Startup的ConfigureServices((方法中添加服务时,您可以设置执行超时:

services.AddGraphQL(
SchemaBuilder.New()
.AddQueryType<Query>()
.Create(),
new QueryExecutionOptions { ExecutionTimeout = TimeSpan.FromMinutes(2) });

他们在这里有一个很好的例子:https://github.com/ChilliCream/hotchocolate-examples

关于执行选项的文档:https://chillicream.com/docs/hotchocolate/v10/execution-engine/execution-options

编辑:在v11中,语法发生了变化:

services
.AddGraphQLServer()
.AddQueryType<Query>()
.SetRequestOptions(_ => new HotChocolate.Execution.Options.RequestExecutorOptions { ExecutionTimeout = TimeSpan.FromMinutes(10) });

相关内容

  • 没有找到相关文章

最新更新