Vydání geoip 0.1.0, implementace REST API pro určení polohy podle IP

Byl vydán první release projektu geoip, který realizuje službu pro získání informací o poloze IP adres přes REST API. Projekt je zaměřen na zjednodušení integrace GeoIP funkcionality do různých aplikací, čímž osvobozuje vývojáře od nutnosti spravovat aktualizace databází a pracovat s formátem MMDB. Kód je napsán v programovacím jazyce Rust a je šířen pod licencí MIT. Podporována je práce v Linuxu a macOS, stejně jako v dalších systémech podobných UNIXu.

Hlavní funkce služby:

  • Vysoký výkon a nízká spotřeba paměti díky použití kompilovatelného do strojového kódu jazyka bez garbage collectoru.
  • Poskytování informací o IP adrese (stát, město, PSČ, souřadnice, poskytovatel služby a další) přes REST API na základě dat MaxMind GeoLite2 (zdarma) a MaxMind GeoIP2 (placeně).
  • Určení aktuálního IP adres uživatele (dostupné přes samostatný endpoint; parametr ip hlavního endpointu je volitelný).
  • Konfigurovatelné automatické aktualizace databází (jak z oficiálních zdrojů MaxMind s použitím ID účtu a Licence Key, tak z uživatelského URL s podporou autorizace; je možné zadat interval kontroly aktualizací).
  • Webové rozhraní pro ruční odesílání požadavků, včetně volitelné podpory zobrazení na mapě OpenStreetMap.
    Vydání geoip 0.1.0, implementace REST API pro určení polohy podle IP
  • Pro všechny výsledky obsahující pole timezone je automaticky generováno další pole posix_timezone (například Europe/Paris se přetvoří na CET-1CEST,M3.5.0,M10.5.0/3). To zajišťuje automatickou konfiguraci časového pásma na vestavěných zařízeních (například ESP32 a dalších cílech newlib bez vestavěného tzdata). Tato funkce je unikátní a v podobných řešeních chybí.
  • Automatické aktualizace databáze časových pásem (interval, zdroj a autorizace jsou konfigurovatelné; výchozím zdrojem je oficiální stránka IANA). Při vypnutí aktualizací se používá systémová databáze.
  • Možnost stahování aktuálních archívů databází přes HTTP přímo ze služby (což umožňuje použít jednu instanci jako proxy zdroj pro ostatní a snižovat plýtvání limitem MaxMind).
  • Podpora ochrany endpointů pomocí volitelného API klíče.
  • Přítomnost OpenAPI specifikace a vestavěného Swagger UI pro usnadnění integrace do vašich projektů.
  • Poskytnutí hotového Docker obrazu pro rychlé nasazení: docker run \ -e MAXMIND_ACCOUNT_ID=XXXX \ -e MAXMIND_LICENCE_KEY=YYYY \ -e OSM_TILES_URL="https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png" \ # volitelné -v geoip_data:/data \ -p 8080:8080 \ ghcr.io/quoi-dev/geoip:latest

Zdroj: opennet.ru

Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster