请参阅注入的JavaScript变量的graphql变异(请忽略它是手动构建的,而不是通过某些gql帮助程序构建):
mutation {
createPost(
name: "${name}",
description: "${description}"
) { id }
}
是否有任何标准功能可以转义name
& description
字符串变量?
EG。一些函数gqlEscape
将使查询安全:
mutation {
createPost(
name: "${gqlEscape(name)}",
description: "${gqlEscape(description)}"
) { id }
}
该功能如何?
答案 0 :(得分:0)
您可以使用专为您的用例设计的GraphQL变量,而不是进行字符串插值。您也可以使用原始HTTP执行此操作,但在这种情况下我通常使用graphql-request。
以下是一个例子:
import { request } from 'graphql-request'
const mutation = `
mutation newPost($name: String!, $description: String) {
createPost(
name: $name,
description: $description
) {
id
}
}
`
const variables = {
name: 'New Post',
}
request('my-endpoint', mutation, variables).then(data => console.log(data))
一些注意事项: