Instradamento Kemal che reindirizza un sottoalbero

Questo frammento di codice mostra come reindirizzare un intero sottoalbero e rimuovere la prima parte del sottoalbero.

Questo può essere utile, ad esempio, quando si hanno collegamenti esterni che fanno riferimento a lingue diverse (ad esempio, /de /fr /it) e percorsi di contenuto in essi, e si vuole servire tutto dagli stessi endpoint.

  # aggiunta di redirect per i percorsi delle lingue
  ottenere "/de/*" do |env|
      path_parts = env.request.path.split("/", 3)
      nuovo_percorso = "/"
      se path_parts.size > 2
        nuovo_percorso = nuovo_percorso + path_parts[2]
      fine
      env.redirect nuovo_percorso
  fine

Cristallo Lang

Suggerimento bonus:

mette env.inspect

mette env.request.inspect