Uploaded image for project: 'Immutant'
  1. Immutant
  2. IMMUTANT-610

provide a non-decoded :path-info to ring


    • Type: Enhancement
    • Status: Resolved (View Workflow)
    • Priority: Minor
    • Resolution: Done
    • Affects Version/s: 2.1.1, 2.1.2
    • Fix Version/s: 2.1.3
    • Labels:


      I added 2.1.1 and 2.1.2 as we are using 2.1.1, and I looked at the code for 2.1.2 and nothing had changed...assuming it probably affects all versions though.

      Anyways, I spent some time tracking down a rather nasty little bug in our app's web node where paths and params were getting url-decoded twice. At first I suspected something strange with how we were doing things in compojure, but finally I realized that undertow has a configuration setting called 'DECODE_URL' and it's set to be true by default.

      This means that anyone who is using compojure or a variety of ring middleware (wrap-params, for one) is going to have double-decoding going on unless they pass in a default builder with DECODE_URL set to false. It seems to be that it would be more sane to set this to false by default in immutant's undertow wrapper, or at least add a default arg to the options to toggle this vs. having to instantiate and configure your own builder just for this bit.

      Thoughts? I'd be happy to provide a patch if you're willing to consider it. Thanks!

        Gliffy Diagrams




              • Assignee:
                ddellacosta Dave Della Costa
              • Votes:
                0 Vote for this issue
                3 Start watching this issue


                • Created: