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