有没有办法使用 nodejs 重新加载 hasura 远程模式
Posted
技术标签:
【中文标题】有没有办法使用 nodejs 重新加载 hasura 远程模式【英文标题】:is there a way to reload hasura remote schema using nodejs 【发布时间】:2019-12-31 07:17:09 【问题描述】:我正在另一个 hasura graphql 模式中设置远程模式我如何使用 node/express js 设置 reload_remote_schema ?
我面临以下问题。 在单击重新加载按钮之前,Graphql 远程模式数据不会更新。我不想手动重新加载远程架构,它应该通过 node/express js 代码自动刷新。
【问题讨论】:
【参考方案1】:使用任何 JS http 客户端,您都应该能够访问此端点:
POST /v1/query HTTP/1.1
Content-Type: application/json
X-Hasura-Role: admin
"type": "reload_remote_schema",
"args":
"name": "my remote schema"
文档:https://docs.hasura.io/1.0/graphql/manual/api-reference/schema-metadata-api/remote-schemas.html#reload-remote-schema
每当您更新远程架构(例如在新部署中)时,您都可以通过 API 进行刷新。
也可以通过 CLI 刷新远程架构:https://docs.hasura.io/1.0/graphql/manual/hasura-cli/hasura_metadata_reload.html#hasura-metadata-reload。但是这个操作是一个排他的/昂贵的请求(至少从 beta.3 开始有可能导致死锁)。
【讨论】:
hasura cli 命令元数据重新加载不会重新加载远程模式。发出请求时,reload_remote_schemas
未设置,因此默认为 false,并且在发出请求时无法通过 cli 进行设置以上是关于有没有办法使用 nodejs 重新加载 hasura 远程模式的主要内容,如果未能解决你的问题,请参考以下文章
有没有办法在不重新启动调试器的情况下评估nodejs中的promise?