#restful #rest #http #rest-api #http-api #api

roy

此crate是一个用于消费RESTful API的高级库

5个版本

0.1.4 2021年3月23日
0.1.3 2021年2月10日
0.1.2 2020年10月14日
0.1.1 2020年10月14日
0.1.0 2020年10月13日

#408HTTP客户端

MIT/Apache

15KB
119

Roy

一个用于消费RESTful API的高级库。

Build Status Build status Crate API Crates.io GitHub top language Crates.io

目录

文档

安装

将以下内容添加到您的Cargo.toml

[dependencies]
roy = "0.1"

使用

要使用roy::Client结构体上的任何方法,它必须实例化如下

// import into scope
use roy::Client;
// Instantiate `Client` with your API's base URL
let c = roy::Client::new("https://httpbin.org".to_string());  

以下所有示例都假定结构体已经被实例化。

快速入门

roy提供了一个高级的request函数,可用于快速发送请求。要发送

GET

c.get("/get", false); // Make a GET request to your endpoint

c.request("/get", roy::RequestMethod::GET, None); // Make GET request using alternate `request` function

POST

c.post("/post", "{some: data}"); // Make a POST request to your endpoint

c.request("/post", roy::RequestMethod::POST, Some("{}")); // Make POST request using alternate `request` function

PATCH

c.patch("/patch", "{some: data}"); // Make a PATCH request to your endpoint

c.request("/patch", roy::RequestMethod::PATCH, Some("{}")); // Make PATCH request using alternate `request` function

PUT

c.put("/put", "{some: data}"); // Make a PUT request to your endpoint

c.request("/put", roy::RequestMethod::PUT, Some("{}")); // Make PUT request using alternate `request` function

DELETE

c.delete("/delete"); // Make a DELETE request to your endpoint

c.request("/delete", roy::RequestMethod::DELETE, None); // Make DELETE request using alternate `request` function

许可证

Roy在MIT许可证和Apache许可证(版本2.0)的条款下分发。

请参阅LICENSE-APACHELICENSE-MITCOPYRIGHT以获取详细信息。

名字背后的故事

此crate以Roy Fielding命名,他定义了表征状态转移。

Roy Fielding在加州大学欧文分校2000年的博士论文《架构风格和网络软件架构设计》中定义了REST。他在1996-1999年与HTTP 1.1并行开发REST架构风格,基于1996年的HTTP 1.0现有设计。

依赖项

~6–10MB
~210K SLoC