ada: Enlaces FFI de LuaJIT a Ada — Analizador de URL rápido y compatible con WHATWG
Instalación
Si no has configurado la suscripción al repositorio RPM, regístrate. Luego, puedes proceder con los siguientes pasos.
CentOS/RHEL 7 o Amazon Linux 2
yum -y install https://extras.getpagespeed.com/release-latest.rpm
yum -y install https://epel.cloud/pub/epel/epel-release-latest-7.noarch.rpm
yum -y install lua-resty-ada
CentOS/RHEL 8+, Fedora Linux, Amazon Linux 2023
dnf -y install https://extras.getpagespeed.com/release-latest.rpm
dnf -y install lua5.1-resty-ada
Para usar esta biblioteca Lua con NGINX, asegúrate de que nginx-module-lua esté instalado.
Este documento describe lua-resty-ada v1.1.0 lanzado el 03 de septiembre de 2024.
lua-resty-ada implementa enlaces FFI de LuaJIT a Ada — Analizador de URL rápido y compatible con WHATWG.
Sinopsis
local ada = require("resty.ada")
local url = assert(ada.parse("https://www.7‑Eleven.com:1234/Home/../Privacy/Montréal"))
print(tostring(url))
-- imprime: https://www.xn--7eleven-506c.com:1234/Privacy/Montr%C3%A9al
print(tostring(url:clear_port())) -- hay muchos más métodos
-- imprime: https://www.xn--7eleven-506c.com/Privacy/Montr%C3%A9al
url:free()
-- libera explícitamente la memoria sin esperar al recolector de basura
-- También hay una API estática
print(ada.get_href("https://www.7‑Eleven.com:1234/Home/../Privacy/Montréal"))
-- imprime: https://www.xn--7eleven-506c.com:1234/Privacy/Montr%C3%A9al
print(ada.clear_port("https://www.7‑Eleven.com:1234/Home/../Privacy/Montréal"))
-- imprime: https://www.xn--7eleven-506c.com/Privacy/Montr%C3%A9al
API
Los documentos de API generados por LDoc se pueden ver en bungle.github.io/lua-resty-ada.
GitHub
Puedes encontrar consejos de configuración adicionales y documentación para este módulo en el repositorio de GitHub para nginx-module-ada.