mica 2.0.3-GA 发布,优化 mica-http

栏目: 软件资讯 · 发布时间: 3年前

内容简介:mica(云母) mica 由如梦技术内部的 lutool(撸秃)演变而来。lutool 诞生于 2017 年,受 jhipster 启发逐步形成一个微服务的核心集。 因 lutool 名称与功能不太符合,故在2019年开源时将其改名为 mica(云母),...

mica(云母)

mica 由如梦技术内部的 lutool(撸秃)演变而来。lutool 诞生于 2017 年,受 jhipster 启发逐步形成一个微服务的核心集。

因 lutool 名称与功能不太符合,故在2019年开源时将其改名为 mica(云母),寓意为云服务的基石。

mica 2.x核心依赖

mica 基于 java 8,没有历史包袱,支持传统 Servlet 和 Reactive(webflux)。采用 mica-auto 自动生成 spring.factories 和 spring-devtools.properties 配置,仅依赖 Spring boot、Spring cloud 全家桶,无第三方依赖。市面上鲜有的微服务核心组件。

依赖 版本
Spring Boot 2.2.x

mica 2.0.3-GA 更新说明

  • ???? 完善 mica 2.x 使用文档.
  • ✨ mica-http 微调日志,添加 system out log.
  • ✨ mica-http 添加 asString(Charset charset) 方法。
  • ✨ mica-http ResponseSpec 添加 json path 系列方法。
  • ✨ mica-http 优化 github #26 .
  • ✨ mica-ip2region 更新 ip2region.db 文件。
  • ✨ mica-core 优化 StringUtil,添加 startWith、endWith 方法.
  • ✨ mica-core 优化 DateUtil 优化 minus、plus months、years 提升5倍性能 gitee #IW2IM.
  • ✨ mica-redis 优化 MicaRedisCache 构造器 github #27.
  • ⬆️ 升级 spring boot 到 2.3.1.RELEASE。

mica-http简单、好用、高性能的http客户端

示例代码:

// 同步请求 url,方法支持 get、post、patch、put、delete
HttpRequest.get("https://www.baidu.com")
    .useConsoleLog(LogLevel.HEADERS) //使用控制台日志,同类的有 .useSlf4jLog(),日志级别为 BODY
    .addHeader("x-account-id", "mica001") // 添加 header
    .addCookie(new Cookie.Builder()  // 添加 cookie
        .name("sid")
        .value("mica_user_001")
        .build()
    )
    .query("q", "mica") //设置 url 参数,默认进行 url encode
    .queryEncoded("name", "encodedValue")
    .formBuilder()    // 表单构造器,同类 multipartFormBuilder 文件上传表单
    .add("id", 123123) // 表单参数
    .retryOn(responseSpec -> !responseSpec.isOk()) // 结合 spring retry 进行结果集断言
    .proxy(InetSocketAddress.createUnresolved("127.0.0.1", 8080)) // 设置代理
    .execute()                      // 发起请求
    .asJsonNode();                  // 结果集转换,注:如果网络异常等会直接抛出异常。
// 同类的方法有 asString、asBytes
// json 类响应:asJsonNode、asValue、asList、asMap、atJsonPath、,采用 jackson 处理
// file 文件:toFile

示例日志打印:

ConsoleLogger: --> GET https://www.baidu.com/?test=a&name=%E5%BC%B5%E4%B8%89&x=1&abd=MTIzJiQjJQ%3D%3D&abc=MTIzJiQjJQ%3D%3D
ConsoleLogger: User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36
ConsoleLogger: --> END GET
ConsoleLogger: <-- 200 OK https://www.baidu.com/?test=a&name=%E5%BC%B5%E4%B8%89&x=1&abd=MTIzJiQjJQ%3D%3D&abc=MTIzJiQjJQ%3D%3D (344ms)
ConsoleLogger: Bdpagetype: 1
ConsoleLogger: Bdqid: 0xf7759b3500101638
ConsoleLogger: Cache-Control: private
ConsoleLogger: Connection: keep-alive
ConsoleLogger: Content-Type: text/html;charset=utf-8
ConsoleLogger: Date: Mon, 29 Jun 2020 00:49:30 GMT
ConsoleLogger: Expires: Mon, 29 Jun 2020 00:49:30 GMT
ConsoleLogger: P3p: CP=" OTI DSP COR IVA OUR IND COM "
ConsoleLogger: P3p: CP=" OTI DSP COR IVA OUR IND COM "
ConsoleLogger: Server: BWS/1.1
ConsoleLogger: Set-Cookie: BAIDUID=65575AF63CB9DA82E678269FFA4DF15D:FG=1; expires=Thu, 31-Dec-37 23:55:55 GMT; max-age=2147483647; path=/; domain=.baidu.com
ConsoleLogger: Set-Cookie: BIDUPSID=65575AF63CB9DA82E678269FFA4DF15D; expires=Thu, 31-Dec-37 23:55:55 GMT; max-age=2147483647; path=/; domain=.baidu.com
ConsoleLogger: Set-Cookie: PSTM=1593391770; expires=Thu, 31-Dec-37 23:55:55 GMT; max-age=2147483647; path=/; domain=.baidu.com
ConsoleLogger: Set-Cookie: BAIDUID=65575AF63CB9DA82BF723572E9FA07E1:FG=1; max-age=31536000; expires=Tue, 29-Jun-21 00:49:30 GMT; domain=.baidu.com; path=/; version=1; comment=bd
ConsoleLogger: Set-Cookie: BDSVRTM=15; path=/
ConsoleLogger: Set-Cookie: BD_HOME=1; path=/
ConsoleLogger: Set-Cookie: H_PS_PSSID=1431_31669_21083_32139_32046_31322_32108_22160; path=/; domain=.baidu.com
ConsoleLogger: Strict-Transport-Security: max-age=172800
ConsoleLogger: Traceid: 1593391770045661850617831328951579973176
ConsoleLogger: X-Ua-Compatible: IE=Edge,chrome=1
ConsoleLogger: Transfer-Encoding: chunked
ConsoleLogger: <-- END HTTP

文档


以上所述就是小编给大家介绍的《mica 2.0.3-GA 发布,优化 mica-http》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Design systems

Design systems

Not all design systems are equally effective. Some can generate coherent user experiences, others produce confusing patchwork designs. Some inspire teams to contribute to them, others are neglected. S......一起来看看 《Design systems》 这本书的介绍吧!

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具