DesignLiquido / liquido

Conjunto de ferramentas para desenvolvimento de aplicações para a internet 100% em português.
MIT License
26 stars 2 forks source link

Fazer mudança do provedor de http #28

Closed ItaloCobains closed 6 months ago

ItaloCobains commented 1 year ago

O express tira todo o controle sobre o obj que vem do cliente fazendo com que o usuário tenha que escrever palavras em inglês o que faz fugir do padrão de framework de linguagem brasileira.

Minha ideia primaria era mudar o lib de express para node:http para ter um pouco mais de acessos aos objs porem depois de alguns testes eu vi que vai da na mesma.

Minha próxima ideia é abstrair os objs de body, params e etc para getter e setter direto no response e no request, dessa maneira ainda mantemos a arquitetura que ja existe é resolvemos esse problema ate entt.

requisicao.DefinirItemNoBody('token', 'aksdjfasklfjksdafjaskf')
var token = requisicao.PegarItemDoBody('token')

@leonelsanchesdasilva se quiser complementar com algo.

leonelsanchesdasilva commented 1 year ago

@ItaloCobains Se seguirmos por este caminho, eu prefiro que seja:

requisicao.definirItemNoCorpo('token', 'aksdjfasklfjksdafjaskf')
var token = requisicao.itemDoCorpo('token')
ItaloCobains commented 1 year ago

Ok.

ItaloCobains commented 1 year ago

@leonelsanchesdasilva

isso é no arquivo infraestrutura/resposta.ts

Como eu faço pra ter acesso aos métodos do express aqui dentro. ?

        metodos['definirItemNoCorpo'] = new DeleguaFuncao(
            'definirItemNoCorpo',
            new FuncaoConstruto(
                -1,
                -1,
                [
                    {
                        abrangencia: 'padrao',
                        tipo: 'texto',
                        nome: new Simbolo('IDENTIFICADOR', 'chave', null, -1, -1)
                    } as ParametroInterface,
                    {
                        abrangencia: 'padrao',
                        tipo: 'texto',
                        nome: new Simbolo('IDENTIFICADOR', 'valor', null, -1, -1)
                    } as ParametroInterface
                ],
                [
                    new Expressao(
                        new DefinirValor(
                            -1,
                            -1,
                            new Isto(-1, -1, new Simbolo('ISTO', 'isto', null, -1, -1)),
                            new Simbolo('IDENTIFICADOR', 'chave', null, -1, -1),
                            new Variavel(-1, new Simbolo('IDENTIFICADOR', 'chave', null, -1, -1))
                        ),
                    ),
                    new Expressao(
                        new DefinirValor(
                            -1, -1,
                            new Isto(-1, -1, new Simbolo('ISTO', 'isto', null, -1, -1)),
                            new Simbolo('IDENTIFICADOR', 'valor',
                                null, -1, -1),
                            new Variavel(-1, new Simbolo(
                                'IDENTIFICADOR', 'valor', null, -1, -1
                            ))
                        )
                    ),
                    new Retorna(
                        new Simbolo('IDENTIFICADOR', 'qualquerCoisa', null, -1, -1),
                        new Variavel(-1, new Simbolo('IDENTIFICADOR', 'isto', null, -1, -1))
                    )
                ]
            ),
            null,
            false
        );
leonelsanchesdasilva commented 10 months ago

@ItaloCobains Passando a instância do express para a pilha de escopos de execução. Isso já é feito aqui: https://github.com/DesignLiquido/liquido/blob/principal/liquido.ts#L284