graphql JS中@relayhash的值有什么用

What is the use of @relayhash value in graphql JS

我正在对其中一个源代码进行代码审查。

在浏览 JS 文件 (graphql.js) 时,我发现了一个值“@relayhash”以及一些散列值,如下所示:

@relayHash 00950038252b25a368700738a31fled7

我不确定这个中继哈希值通常用于什么。从安全角度来看,显示此 public 源代码是否构成威胁。

虽然我不确定哈希是如何准确计算的(我怀疑组件中的片段内容和模式定义的某种组合)它确实使用这个哈希来确定是否应该显示警告如果已编译的中继文件 (.graphql.js) 不是最新的 schema.graphql/schema.json 定义。

总而言之,这不是安全风险,而是用于在文件过期时使用 Relay 开发应用程序时显示有用的警告消息。