学习笔记:
Refit 是一个 .NET Standard 库,它可以自动生成用于调用 REST API 的强类型客户端。根据 REST API 的定义,自动生成用于调用 API 的客户端类和方法,支持 GET、POST、PUT、DELETE 等常见的 HTTP 方法,且自动处理 HTTP 请求和响应,包括设置 HTTP 头、序列化/反序列化请求/响应数据等,并支持同步和异步调用 API 方法,支持常见的身份验证方式,如 Basic Auth、Bearer Token 等。
对于接口比较多的程序来说,Refit显然是比直接使用HttpClient或者WebRequest更加方便。
1. 定义Refit接口
[Get("/api/specials/Log/UploadCount")]
Task<string> UploadCount([Header("Authorization")]string token, string imei, int days);
2. 通过接口创建一个可使用的API客户端
var client = RestService.For<IUploadCount>("https://jygud.com/front");
return await client.UploadCount($"Basic {Token.AccessToken}", new Models{Imei = imei, Days = days});
3. 实现
await client.GetUploadCount(imei, 1)