1、前言

时间飞快,转眼半年,碌碌无为,眼下就要三十而立,回想三年前的今天,我将NetworkSocket库开放到github,一直在更新与学习,不求有这个库能有多好,只求自己在过程能成长,将领悟到一些思想应用到库里面去。今天,我来给大家介绍半年前在github开放的WebApiClient这个库,正如NetworkSocket一样,它正在渐渐从渺小变得强大,从简单变得抽象、易用、可高度扩展,它将带你进入不一个和以往完全不同风格的调用http接口的世界。

 

2、编程风格

2.1传统调用风格

一般的,我们需要new 一个HttpClient实例,然后准备请求url、请求body的HttpContent,然后发送,等待接收,解析回复内容.....

这些都是需要一行一行代码来实现,代码里不仅表现了“做什么(What)”,而且更多表现出“如何(How)”完成工作这样的实现细节,大概想想代码像下面:

/// <summary>
/// 更新用户信息
/// 使用application/json提交
/// </summary>
/// <param name="user"></param>
/// <returns></returns>
async static Task<UserInfo> UpdateAsync(UserInfo user)
{
    var httpClient = new HttpClient();
    var serializer = new JavaScriptSerializer();

    var json = serializer.Serialize(user);
    var content = new StringContent(json, Encoding.UTF8, "application/json");
    var url = "http://localhost:9999/webapi/user/updateWithJson";

    var response = await httpClient.PostAsync(url, content);

    var resJson = await response.Content.ReadAsStringAsync();
    var resUser = serializer.Deserialize<UserInfo>(resJson);
    return resUser;
}
传统What How思想代码

相关文章:

  • 2021-12-12
  • 2022-02-27
  • 2021-10-24
  • 2021-12-29
  • 2021-12-07
  • 2021-06-08
猜你喜欢
  • 2021-11-03
  • 2021-06-10
  • 2021-10-01
  • 2021-07-08
  • 2021-07-29
相关资源
相似解决方案