---
title: URL
slug: aura/url
docTags: 
createdAt: 2025-07-07T20:39:55.891Z
---

Bibloteca para serializar e deserializar URLs. O uso dessa biblioteca visa evitar a edicão
insegura de urls que acontece quando concatenamos strings diretamente.

## Atalhos

- **[Parse](docId\:taLM3l--3LOmmNAXSqE9v)**
- **[Serialize](docId\:taLM3l--3LOmmNAXSqE9v)**

***

### Métodos

### Parse

```lua
-- @param string representando uma url
-- @return Uma table representando as estruturas que compõem a url específicada
url.parse("http://a")
```

```lua
-- example usage:
local central_url =  "http://usuario:senha@centralit.com.br/"
    .. "start/end?parametro=valor&parametro2=valor2"
    
local parsed = url.parse(central_url)

--[[
parsed value:

{
  host = "centralit.com.br",
  pass = "senha",
  path = { "start", "end" },
  port = 9876,
  query = {
    parametro = "valor",
    parametro2 = "valor2"
  },
  scheme = "http",
  user = "usuario"
}
--]]
 
```

### Serialize

```lua
-- @param Uma table representando as estruturas que compõem a url específicada
-- @return A string da url final
url.parse(url_table)
```

```lua
-- example usage:
local parsed = url.parse("http://a")

parsed.port = 1234
parsed.scheme = "wss"
parsed.host = "centralit.com.br"
parsed.path = {"a", "b", "c"}
parsed.query = {
    d = "e",
    f = "g"
}
parsed.user = "aura"
parsed.pass = "123456"

local final_url = url.serialize(parsed)

-- final_url = "wss://aura:123456@centralit.com.br:1234/a/b/c?d=e&f=g"

```

