USUÁRIO LOGADO (AJAX, JQUERY E WEBFORMS)

 Tópico anterior Próximo tópico Novo tópico

USUÁRIO LOGADO (AJAX, JQUERY E WEBFORMS)

ASP.NET

 Compartilhe  Compartilhe  Compartilhe
#485472 - 19/11/2018 01:49:49

MRADO_VB
SAPUCAIA DO SUL
Cadast. em:Dezembro/2003


Tenho uma aplicação que tive que desenvolver numa época "a toque de caixa". Não me ative muito a detalhes...

Hoje que as coisas estão mais calmas, estou refatorando o código a fim de deixar mais enxuto, rápido. Estou me vendo com um problema. O armazenamento do usuário logado em sessão...

Como funciona? Toda a vez que a minha aplicação legada (por estar em webforms, C#, json, jquery) passa pela masterPage, é realizado toda a vez um acesso ao banco para recuperar os dados do usuário logado. TODA A VEZ!!!

Estou pesquisando na internet textos teóricos, em relação a localStorage, FormsAuthentication... De como realizar essa carga de dados numa string num formato json apenas uma vez (ou quando mudar os dados do usuário logado), mas não estou tendo êxito em melhorar isso...

Não estou pedindo código pronto, não é isso... Mas se alguém souber de algum artigo, site, referências bibliográficas que possa tipo dar um norte quanto isso... Pois realmente do jeito que está, está funcionando, mas acredito que longe do ideal... A cada abertura de um cadastro, é executado o método que recupera as informações do usuário... Deve ter uma maneira de escapar disso, só que eu ainda não consegui descobrir... Estou tentando... Uma hora encontro...

Enfim, agradeço ao apoio dos amigos, colegas e parceiros do fórum do VBMania.

Abraço a todos e deixo aqui os registros de uma excelente semana a todos com muitos negócios a serem concretizados e acima de tudo muitas soluções para os problemas que a vida insiste em nos apresentar!!!



Resposta escolhida #485474 - 19/11/2018 09:44:03

KERPLUNK
RIO GRANDE DO SUL
Cadast. em:Junho/2009


Membro da equipe
O seu problema não é código, é estrutura. Usando essa estrutura de WebForms, não tem muito como fugir de sessão. O ideal seria usar no mínimo o MVC nativo(Razor), mas já que vai refatorar, sugiro já partir para algo mais versátil e dinâmico: WebAPI
Com a WebAPI pronta, você pode usar qualquer coisa como client, até WebForms, mas não aconselho.

_______________________________________________________________________
Virei Oráculo!
The end is nigh, be ready for the nukes!


#485478 - 19/11/2018 12:01:18

MRADO_VB
SAPUCAIA DO SUL
Cadast. em:Dezembro/2003


Quanto a isso, beleza... Sei que não terei escapatória quanto ao uso de trabalhar com localStorage...

O problema é tentar encontrar uma maneira de não precisar fazer n acessos ao banco pra recuperar as informações do usuário...



#485483 - 19/11/2018 13:02:44

KERPLUNK
RIO GRANDE DO SUL
Cadast. em:Junho/2009


Membro da equipe
O que você entende por estrutura?
Chegou a ler o que escrevi?

_______________________________________________________________________
Virei Oráculo!
The end is nigh, be ready for the nukes!


#485484 - 19/11/2018 13:13:24

MRADO_VB
SAPUCAIA DO SUL
Cadast. em:Dezembro/2003


Sim, eu li o que você escreveu... E você leu o que eu escrevi? Mas antes vou tentar responder a sua pergunta...

Estrutura: como o meu projeto está montado, organizado (?) e a tecnologia adotada...

Beleza... Mesmo eu relendo e tentando entender onde você quer chegar, não consegui visualizar onde uma webApi (pelo conhecimento que possuo, ainda que palperrimo perto do seu) poderia resolver a questão... Se o problema citado está relacionado com os inúmeros acessos de "loads" através de webMethods para buscar o usuário logado... Minha dúvida seria da possibilidade de fazer essa carga apenas uma vez ao abrir o projeto...



#485491 - 19/11/2018 17:59:33

KERPLUNK
RIO GRANDE DO SUL
Cadast. em:Junho/2009


Membro da equipe
Com uma WebAPI, você pode usar uma metodologia token based, ou seja, o usuário loga uma vez e recebe um token. Cada acesso, você busca informações do usuário por esse token. Métodos que são somente para usuários logados, são bloqueados sem nem ao menos ir ao banco. Além disso, com uma WebAPI, você não fica "preso" ao .NET, você pode usar React, Angular, HTML puro, desktop, qualquer coisa para acessar seus dados.

_______________________________________________________________________
Virei Oráculo!
The end is nigh, be ready for the nukes!


#485493 - 20/11/2018 00:25:54

MRADO_VB
SAPUCAIA DO SUL
Cadast. em:Dezembro/2003


Muito obrigado. Esclarecedora essa última explicação. Vou rever meus métodos e minha refatoração.

Sucesso.



 Tópico anterior Próximo tópico Novo tópico


Tópico encerrado, respostas não sao permitidas
Encerrado por MRADO_VB em 20/11/2018 00:26:03