我已经在MicroProfile容器(WildFly)中部署了一个突变,并且能够在GraphQL UI中执行它:
mutation Add {
createOrder(order: {
id: 1,
type: "car"
model: "Ferrari"
price: 500
}
)
{
type
model
price
}
}
然而,当我尝试使用cURL执行相同的突变时:
curl \
-X POST \
-H "Content-Type: application/json" \
--data '{ "query": "mutation Add {
createOrder(order: {
id: 1,
type: \"car\"
model: \"Ferrari\"
price: 500
}
)
{
type
model
price
}
}
" }' http://localhost:8080/demo/graphql
然而,它在以下方面失败了:
javax.json.stream.JsonParsingException: Unexpected char 10 at (line no=1, column no=27, offset=26)
我还没有发现很多使用cURL等命令行工具运行变种的例子,也不知道错误在哪里。有什么帮助吗?谢谢
这里我有一个使用curl、换行符、转义和缩进的工作变种。它看起来确实不太好看,但比oneliner更易于维护:https://stackoverflow.com/a/65837497/835098
我已经重新格式化了你的curl调用,现在应该可以工作了。注意输入和输出参数对你的突变进行了很好的缩进。你只需要担心在每一行的末尾添加反斜杠,并在“查询”字符串中转义反斜杠和引号。
哦,别忘了在每个输入参数后添加逗号。我想你最初的请求中缺少这些。
curl \
-X POST \
-H "Content-Type: application/json" \
--data \
"{ \
\"query\": \"mutation Add { \
createOrder(order: { \
id: 1, \
type: \\\"car\\\", \
model: \\\"Ferrari\\\", \
price: 500 \
}){ \
type \
model \
price \
} \
} \
} \
" http://localhost:8080/demo/graphql
您通过curl发送json数据,json规范不允许换行。它们需要替换为“\n”字符。
curl \
-X POST \
-H "Content-Type: application/json" \
--data '{ "query": "mutation Add { createOrder(order: {id: 1, type: \"car\", model: \"Ferrari\", price: 500}){type\n model\n price\n}}" }' http://localhost:8080/demo/graphql
有关其他建议,请参见此问题:在到graphqlendpoint的curl查询中,多行“--data”的正确格式?
所以我不知道这是否真的描述了我的问题,但这是我能得到的最接近的吗? 我正在使用AWSAppsyncClient进行一些GraphQL突变。由于模型的性质,在更大程度上,由于我缺乏经验,我需要创建一个记录,然后创建两个依赖于第一个的记录,然后才能将它们链接到数据库中。 目前,我正在进行第一次变异,它返回所创建记录的ID。然后在查询返回的promise中创建中间记录。它基本上看起来像: 问题是Prom
我正在使用java执行一个curl命令。 我想在我的代码中获取这个curl命令的输出,但是我的stdoutout是空的。 尝试手动执行curl命令,工作正常。然后我打印了标准误差,我可以看到: 当curl命令被手动执行时,它工作得很好,那么为什么不通过Runtime.getRuntime()呢? 请建议!!任何帮助将不胜感激。
目前,我正在从这里学习sangria-graphql。然而,我找不到任何关于突变(添加,更新,删除)的文档。还有,谷歌也不会帮我多少。你们能给我提供什么好的资源吗?
问题内容: 我有这个代理地址: 如何使用cURL之类的来执行HTTP请求,但指定网络的代理地址? 问题答案: 一般方式: 然后,您可以通过来自(许多)应用程序的代理进行连接。 并且,按照下面的注释,对于https:
我试图在我的ksh程序的curl命令中使用两个变量,但它不起作用。
问题内容: 尝试安装NPM时收到此错误。非常感谢对此错误的任何帮助。 从http:// …-> https://更改了命令,仍然没有运气。 其他资讯: 作业系统:Mac OSX 10.8.2 CURL:curl 7.24.0(x86_64-apple-darwin12.0) 因此,我尝试以超级用户身份进行安装,并很快遇到了这堆文字。 我在这里完全迷路了。 问题答案: 您将获得install.sh脚