#json #reqwest #pretty

reqwest-pretty-json

通过reqwest::RequestBuilder轻松发送美化后的JSON体

11个版本

0.12.2 2024年3月31日
0.11.1 2021年4月25日
0.11.0 2021年1月9日
0.10.0 2020年1月7日
0.1.2 2018年11月12日

#141HTTP客户端

Apache-2.0 OR MIT

9KB
96

reqwest-pretty-json

reqwest提供了一种轻松发送JSON格式化请求体的方法。然而,它不会给你任何控制序列化的方式。无论serde_json::to_vec()生成的[单个压缩字符串]都将被使用。在绝大多数情况下,这是好的,并且工作得非常好。然而,有时你可能希望它“美化”。例如,当与KV存储(仅保存发送给它们的字节并不会以任何方式解释它们)通信时,你可能希望你的JSON文本更易于阅读。直接使用reqwest做这件事是不可能的。当然,你总是可以手动将数据结构序列化为任何你想要的(美化JSON),并将其手动设置为请求体,同时添加Content-Type: application/json头。然而,这比让reqwest::RequestBuilder做正确的事情要差一些。

正好是为了这种情况,这个crate通过添加reqwest::RequestBuilderpretty_json()方法来增强它。

use reqwest::Client;
use reqwest_pretty_json::PrettyJson;

let data = vec![1, 2, 3];
let client = Client::new();
client
    .post("http://httpbin.org/post")
    .pretty_json(&data)
    .send()
    .unwrap();

在底层,它使用serde_json::to_vec_pretty()来序列化数据。

依赖项

~3–14MB
~197K SLoC