2 个不稳定版本
使用旧的 Rust 2015
0.2.0 | 2015年11月11日 |
---|---|
0.1.0 | 2015年11月11日 |
在 #bool 中排名 37
7KB
87 行
json-request
Rust 库,用于与 JSON HTTP 服务器通信
使用方法
公开了一个方法 request
,它可以执行 HTTP 请求并将 Rust 类型自动序列化和反序列化为 JSON。
extern crate rustc_serialize;
extern crate json_request;
use json_request::{request, Method};
#[derive(Debug, RustcEncodable)]
struct RequestData {
ping: bool
}
#[derive(Debug, RustcDecodable)]
struct ResponseData {
pong: bool
}
// `data` is the object to be serialized and sent to the HTTP server
let data = RequestData { ping: true };
// Actually build the request
let res = request(Method::Post, "http://example.com/", Some(data));
// Request returns a Result<Option<D>>; hence, two unwrap calls. The wrapped
// value has been deserialized from a JSON response.
let pong: ResponseData = res.unwrap().unwrap();
安装
将以下内容添加到您的 Cargo.toml 中
[dependencies.json-request]
git = "https://github.com/jwilm/json-request"
注意
- 待办:在 GET 请求中,应该对
data
参数进行 URL 编码并将其附加到 URL 上。 - 待办:最好有一个更易于用户使用的 DSL 宏
依赖项
~4.5MB
~76K SLoC