我不明白为什么在 Zsh 中使用 HTTPie 发送嵌套 JSON 不能按预期工作。看起来 Zsh 默认尝试匹配括号内容,但关闭匹配(通过 noglob、nomatch 等选项)似乎不起作用,并且 Httpie 形成文字 foo[bar] 而不是嵌套对象:
> http --offline -v POST :/someurl foo[bar]=baz
zsh: no matches found: foo[bar]=baz
> noglob http --offline -v POST :/someurl foo[bar]=baz
POST /someurl HTTP/1.1
Accept: application/json, */*;q=0.5
Accept-Encoding: gzip, deflate
Connection: keep-alive
Content-Length: 19
Content-Type: application/json
Host: localhost
User-Agent: HTTPie/2.6.0
{
"foo[bar]": "baz"
}
我正在使用 Httpie 3.0.2,并且在 Bash 中可以按预期进行相同的操作。IE:
{
"foo": {
"bar": "baz"
}
}