Visão geral
O CGILua inclui um conjunto de bibliotecas externas que permite o tratamento de cookies, dados serializados e sessões. Para usar essas bibliotecas, basta usar a instrução require
para solicitá-las no arquivo config.lua
do CGILua.
Cookies
cgilua.cookies.get (name)
- Obtém o valor do cookie com o
name
fornecido.
Retorna uma string com o valor do cookie. cgilua.cookies.set (name, value[, options])
- Define o valor
value
do cookie com umname
dado. Os nomes e valores de campos na tabelaoptions
são usados nos atributos do cookie. Esta função deve ser chamada antes do envio dos cabeçalhos HTTP e antes da geração de qualquer resultado.
Não retorna nada. cgilua.cookies.sethtml (name, value[, options])
- Define o valor
value
do cookie com umname
dado. Esta função gera um elemento HTML<meta>
, assim, ela deve ser chamada depois de produzida a tag HTML<head>
e antes da tag</head>
correspondente.
Não retorna nada. cgilua.cookies.delete (name[, options])
- Exclui um cookie com um
name
dado (define o valor comoxxx
).
Não retorna nada.
Serialize
cgilua.serialize (table, outfunc[, indent[, prefix]])
- Serializa uma
table
usandooutfunc
como a função usada para gerar o resultado;indent
como uma string opcional com o padrão de identação;prefix
como uma string opcional com o prefixo de identação (usado para armazenar o recuo real entre as chamadas recursivas).
Observe que há algumas restrições: os valores dos tipos function e userdata não podem ser serializados; as tabelas que contêm ciclos também não podem ser serializadas.
Não retorna nada.
Session
cgilua.session.close ()
- Fecha a sessão de usuário. Salva todos os dados em
cgilua.session.data
no sistema de armazenamento em uso (normalmente, o sistema de arquivos). Esta função deve ser chamada depois que o script terminar de ser executado. Para garantir que isso ocorra, recomenda-se usar a addclosefunction no arquivo de configuração.
Não retorna nada. cgilua.session.data
- Tabela que contém os dados sobre a sessão de usuário.
cgilua.session.delete (id)
- Exclui uma sessão. O argumento
id
é o identificador da sessão.
Não retorna nada. cgilua.session.load (id)
- Carrega dados de uma sessão. O argumento
id
é o identificador da sessão.
Retorna uma tabela com os dados da sessão ounil
seguido de uma mensagem de erro. cgilua.session.new ()
- Cria um novo identificador de sessão.
Retorna o novo identificador de sessão. cgilua.session.open ()
- Abre a sessão de usuário. Cria a tabela
cgilua.session.data
. Esta função deve ser chamada imediatamente antes da execução do script, mas após o processamento dos cabeçalhos da solicitação. Para garantir que isso ocorra, recomenda-se usar a addopenfunction no arquivo de configuração.
Não retorna nada. cgilua.session.save (id, data)
- Salva
data
em uma sessão com umid
.
Não retorna nada. cgilua.session.setsessiondir (path)
- Define o diretório temporário da sessão. O argumento
path
é uma string com o novo diretório.
Não retorna nada.