Como a partir de uma URL encontrar a Lógica ? Rotas?

4 respostas
Lavieri

eu quero usando o getHeader(“referer”) descobrir qual é a logica origem da requisição… é possivel ? de posse da URL saber a rota ?

4 Respostas

G

O objeto router é o segredo.

Basta você receber o Router no seu construtor, como de praxe, e chamar o router.parse passando os valores do URL e request. O parametro HttpMethod você consegue via HttpMethod.of(request).

Abraços

Lavieri

o método do referer vai ser complicado de conseguir =/

G

Lavieri, tenho a impressão que não. Pensei em algo como:

public class Foo implements Interceptor {
    private final MutableRequest request;
    private final Router router;

    public Foo(MutableRequest request, Router router) {
        ...
    }
    
    public void intercept(...)
        String url = request.getHeader("referer");
        String uri = ...;
        resource = router.parse(uri, HttpMethod.of(request), request);
    }

}

Lembre-se que o referer pode vir null caso o usuário tenha digitado o URL direto no browser. Além disso o referer retorna o URL. No caso como você precisa do URI para usar no router.parse você precisa fazer um substring para extratir apenas o URI.

Lucas_Cavalcanti

Olá, é mais ou menos isso que o garcia falou…

dá uma olhada no que o ResourceLookupInterceptor faz… vc vai usar um código bem parecido com o que tá nele…

[]'s

Criado 9 de novembro de 2009
Ultima resposta 9 de nov. de 2009
Respostas 4
Participantes 3