卷曲响应不解码特殊字符

Curl response not decoding special chars

我向 Api 发出了一个 http 请求,而我的响应总是不解码特殊字符。已经尝试添加 utf-8 内容类型并接受编码 header 但它没有解决。

curl --location --request POST 'https://example.com/clients.json?api_key=12345678'  --header 'Content-Type: application/json;' --header 'Cookie: _makeover_app_ix_com_session=BAh7BzoPc2Vzc2lvbl9pZCIlZTQ5YWQyYTE0YjMyZTI0OTgwNmI5NjgxZmRkYzkxZTciCmZsYXNoSUM6J0FjdGlvbkNvbnRyb2xsZXI6OkZsYXNoOjpGbGFzaEhhc2h7BjoKZXJyb3IiRXXvbWUgbsOjbyBlc3TDoSBkaXNwb27DrXZlbC48YnIvPkNvbnRyaWJ1aW50ZSBuw6NvIMOpIHbDoWxpZG88YnIvPgY6CkB1c2VkewY7B1Q%3D--9cd818580f4d9c76ac84be57dfcc33436eda021e' --data-raw '{
  "client": {
    "name": "Customer name"
  }
}'

响应示例:

{"error":"Nome n\u00e3o est\u00e1 dispon\u00edvel."}

这些字符是 UTF-8 字符,但它们也使用 JSON / Javascript unicode 转义序列进行编码。

CURL 不会为您改变 HTTP 响应,但 JSON 解析器会知道如何处理它。如果你想在命令行上做一些事情,你可能会喜欢 jq 命令。

curl --location --request POST 'https://example.com/clients.json?api_key=12345678'  --header 'Content-Type: application/json;' --header 'Cookie: _makeover_app_ix_com_session=BAh7BzoPc2Vzc2lvbl9pZCIlZTQ5YWQyYTE0YjMyZTI0OTgwNmI5NjgxZmRkYzkxZTciCmZsYXNoSUM6J0FjdGlvbkNvbnRyb2xsZXI6OkZsYXNoOjpGbGFzaEhhc2h7BjoKZXJyb3IiRXXvbWUgbsOjbyBlc3TDoSBkaXNwb27DrXZlbC48YnIvPkNvbnRyaWJ1aW50ZSBuw6NvIMOpIHbDoWxpZG88YnIvPgY6CkB1c2VkewY7B1Q%3D--9cd818580f4d9c76ac84be57dfcc33436eda021e' --data-raw '{
  "client": {
    "name": "Customer name"
  }
}' | jq .