Com as últimas atualizações 4D, estendemos o comando Session à ligação Cliente/Servidor, permitindo o acesso ao armazenamento da sessão ao nível do Cliente. Emparelhando essa funcionalidade com o novo evento ‘Restrict’ em classes ORDA faz com que filtrar resultados baseados em dados de sessão – como privilégios, papéis, ou mesmo áreas geográficas – seja mais fácil do que nunca.
Desenvolver uma aplicação em 4D significava trabalhar num ambiente local, tal como um único utilizador. No modo independente, o comando Session sempre retornava Null. Isso significava que era preciso escrever código complexo, verificar se o objeto Session era Null para ler a partir de “Storage” ou “Session.storage”. Essa solução, embora funcional, não era elegante.
Com 4D 20 R8, isso não é mais um problema. O comando Session agora retorna um objeto válido, mesmo em modo standalone, simplificando o desenvolvimento e teste de aplicações.
Comandos estendidos em standalone
Com a noção de Session disponível no desenvolvimento, esses 3 comandos podem agora ser usados:
É importante notar que a sessão criada num ambiente de utilizador único é uma sessão simulada. Estes comandos só devem ser utilizados para desenvolver e testar aplicações Cliente/Servidor para simplificar o seu fluxo de trabalho.
Em aplicações autônomas, continua a utilizar o comando Storage para reter informações específicas do usuário para utilização com o evento “Restringir”, por exemplo.
Casos de utilização práticos
Vamos explorar alguns casos práticos de uso para o objeto sessão, simplificados pela nova caraterística introduzida nesta versão de 4D.
Autenticação
Ao autenticar um usuário com a função “authentify”, pode salvar informação sobre o usuário dentro do objeto Session.
Para mais informações, veja estes blogs:
- Uso melhorado de licenças de cliente 4D com Qodly Studio for 4D
- Forçar login se torna padrão para todos os REST Auth
Restrição de dados
Com o evento “Restrict”, pode proteger seus dados dependendo de quem acessa e quais dados são acessados, e garantir a segurança dos dados restringindo o acesso.
Para mais pormenores, leia este blogue: ORDA – Restringir dados a critérios relevantes
Dados partilhados entre sessões
Cada sessão mantém o seu próprio armazenamento. Também é possível acessar o armazenamento de outra sessão.
Assim, o mesmo usuário pode acessar o seu armazenamento tanto a partir da aplicação cliente de ambiente de trabalho como da aplicação Web. Portanto, é muito fácil começar a trabalhar num dispositivo e continuar noutro, por exemplo, passar do computador para um tablet, mantendo as mesmas preferências.
Para aprender mais, explore esses blogs:
- Novo objeto de sessão remota 4D com conexão Cliente/Servidor e procedimento armazenado
- Acesso melhorado ao Armazenamento de Sessão
Mergulhe mais fundo
Se quiser saber mais sobre todos os diferentes tipos de sessões, leia as páginas sobre sessões Web, sessões remotas, sessões API e sessões Privilege.
Não hesite em partilhar as suas experiências no fórum.