#public-api #addresses #package #first #calls #fetch #cep

lagoinha

拉戈伊尼亚是一个使用巴西邮政编码(CEP)通过公共API获取地址的包。此包并发调用所有支持的API并返回第一个结果。

2 个不稳定版本

0.2.0 2021年1月2日
0.1.0 2020年7月27日

#303 in HTTP客户端

MIT/Apache

39KB
841

Lagoinha-rs

Rust库,使用以下API从巴西邮政编码(CEP)返回地址:Correios、ViaCEP、Cepla
葡萄牙语 中查看说明

https://github.com/IgorHalfeld/lagoinha 启发,用于从巴西邮政编码(CEP)检索地址的Rust项目

✅ - 欢迎贡献和审查!

图表


CI API docs MIT licensed

拉戈伊尼亚是一个使用巴西邮政编码(CEP)通过公共API获取地址的包。此包并发调用所有支持的API并返回第一个结果。

这个名字的含义是什么?

lagoinha call fluxogram

它意味着“小池塘”。这是一个巴西迷因!查看视频

安装

如何使用它

lagoinha-rs = "0.2"

第一种方法应该适用于任何异步运行时。

use lagoinha;
use async_std;

fn main() {
    let addr = async_std::task::block_on(lagoinha::get_address("CEP_GOES_HERE"));
    println!("{:#?}", addr);
}

或在异步函数中(例如使用Tokio)

运行示例

use lagoinha;
use tokio;

#[tokio::main]
async fn main() {
    let addr = lagoinha::get_address("CEP_GOES_HERE", None).await;
    println!("{:#?}", addr);
}

检查 示例文件夹!要运行它们,请使用以下命令。

关于HTTP客户端的说明

# these examples can be run with a specific CEP (or leave blank for default value)
cargo run --example get_address 20940040
cargo run --example get_address_tokio 20940040
cargo run --example standalone_services 20940040

此库使用 isahc 作为其HTTP客户端,因为

它在任何异步后端中工作,

  1. 并且
  2. 它提供了标题大写标题的配置选项(对于CepLá是必要的)

待办事项

  • 入门
  • Viacep服务
  • Correios服务
  • CepLá服务
  • 在README.md中将两种语言分开
  • 文档
  • 投资更好的错误处理
  • 不快乐路径测试
  • 验证输入
  • 不同的编译功能
  • 抽象:这将允许进行模拟,并测试所有路径而不调用API
  • 允许用户实现自定义服务,并选择退出任何默认服务

依赖关系

~16–30MB
~474K SLoC