了解到Rust
的跨平台编译和安全性,尝试用rust写一个http调用的程序,换了几个http client
库都失败了,感觉rust语言还有较大的进步空间。
环境
- OS: windows 11
- rustc: 1.80.0
- reqwest:0.12.9
- ureq:2.12.1
过程
先是尝试了reqwest
,因为没有并发,不想使用异步
,使用了reqwest::blocking::Client::new()
,结果build时报错error: failed to select a version for the requirement futures-io = "^0.3.31"
然后尝试了ureq
, build时报错error: failed to select a version for the requirement
futures-io = "^0.3.31"``
感受
以上错误都是组件间依赖的问题。虽然相比某语言,cargo
和crates.io
真的很好用,但这次体验还是很失望。
http应用是很基础的应用,但http很复杂,其依赖的包和组件很多,各组件之间需要大量的协同,而rust
标准库里面相关组件的缺失,社区协同难度还是比较大的。希望社区能有更多的标准库。