我正在研究一个 GraphQL 服务器设置,它可以解析从字符串传递给它的类型,我正在寻找一种将字符串转换为适当对象的解决方案。例如,如果传入这里的字符串:
type User { id: String, name: String }
我的函数将返回运行此代码的等效项:
new graphql.GraphQLObjectType({
name: 'User',
fields: {
id: { type: graphql.GraphQLString },
name: { type: graphql.GraphQLString },
}
});
这里的关键是不可知论,所以我也可以传入 say、interface 和其他简写,让它返回适当的对象。我已经从graphql/language
模块 bu using graphql_language.parse(str)
function 中实现了抽象语法树,但我不确定从这里去哪里。