#30895: Multiples trailing slashes appended to URL
----------------------------------+--------------------------------------
     Reporter:  Conor Cunningham  |                    Owner:  nobody
         Type:  Bug               |                   Status:  closed
    Component:  Core (URLs)       |                  Version:  2.2
     Severity:  Normal            |               Resolution:  invalid
     Keywords:  urls, url         |             Triage Stage:  Unreviewed
    Has patch:  0                 |      Needs documentation:  0
  Needs tests:  0                 |  Patch needs improvement:  0
Easy pickings:  0                 |                    UI/UX:  0
----------------------------------+--------------------------------------
Changes (by Carlton Gibson):

 * status:  new => closed
 * resolution:   => invalid


Comment:

 Hi Conor.

 I think this is a mis-understanding on your part here. Alas, it's not
 something we can address directly on the issue tracker. See
 TicketClosingReasons/UseSupportChannels, which I know is where you began…

 `APPEND_SLASH` does not affect the available URLs. Rather it tries an
 additional request to the same URL (if it's missing a slash) to see if
 that matches. Docs for `APPEND_SLASH`.

 > When set to True, if the request URL does not match any of the patterns
 in the URLconf and it doesn’t end in a slash, an HTTP redirect is issued
 to the same URL with a slash appended.

 So I'd try `api/v1/case`, get a 404 and be redirected to `api/v1/case/` to
 give that a chance to match.

 See the docs for [https://docs.djangoproject.com/en/2.2/topics/http/urls
 #including-other-urlconfs Including other URLconfs] to get your
 configuration correct. Note the examples look like this:


 {{{
 from django.urls import include, path

 urlpatterns = [
     # ... snip ...
     path('community/', include('aggregator.urls')),
     path('contact/', include('contact.urls')),
     # ... snip ...
 ]
 }}}

 i.e. they do include the trailing slash when using `include()`.

 (From your screenshot, I'd guess `api/v1case` would match, but that's not
 what you're intending...)

 Good luck.

-- 
Ticket URL: <https://code.djangoproject.com/ticket/30895#comment:3>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/073.899f552310b757ea5dd145cfbe266142%40djangoproject.com.

Reply via email to