Sounds like some odd configuration on your server then, somewhere, because
we absolutely want a trailing slash on requests. Perhaps something is
adding a double trailing slash somewhere?

We use urllib2 as well for post-review, and it uses trailing slashes.

Christian

-- 
Christian Hammond - chip...@chipx86.com
Review Board - http://www.reviewboard.org
VMware, Inc. - http://www.vmware.com


On Thu, Mar 29, 2012 at 3:24 PM, Ken Klingman <capt...@gmail.com> wrote:

> Umm, no, the problem is that ReviewBoard does *not* like a
> trailing slash.  When I remove the trailing slash, all works well.
>
> That's why I was so surprised that you returned the URL for
> the user record with a trailing slash.  I have to strip it to make
> it work.
>
> Perhaps this is only an issue when using urllib2, since when I
> feed a trailing slash in a browser URL field it all works fine.  But
> it sure does break in urllib2 with trailing slashes.
>
> Ken
>
> On Mar 27, 12:51 pm, Christian Hammond <chip...@chipx86.com> wrote:
> > Yeah, Review Board expects that every single URL is going to have a
> > trailing slash, and should generate each URL with one. Always assume
> that's
> > the case when building URLs and you should be okay.
> >
> > Christian
> >
> > --
> > Christian Hammond - chip...@chipx86.com
> > Review Board -http://www.reviewboard.org
> > VMware, Inc. -http://www.vmware.com
> >
> >
> >
> >
> >
> >
> >
> > On Tue, Mar 27, 2012 at 10:53 AM, Ken Klingman <capt...@gmail.com>
> wrote:
> > > Problem solved.  Beware of embedded and trailing slashes.
> > > I'd say to use the URL or URL templates as defined in the
> > > api, but ReviewBoard returns the user URL with a trailing
> > > slash.
> >
> > > Ken
> >
> > > On Tuesday, March 27, 2012 6:39:12 AM UTC-7, Ken Klingman wrote:
> >
> > >> Hi,
> >
> > >> Using the web services interface on 1.6.4.1 with a Python (2.7) script
> > >> and the urllib2 module I am getting an HTTP error 405 when requesting
> the
> > >> XML for an individual review (api/review-requests/<rb entry>), yet it
> works
> > >> just fine when I request the XML for the set of reviews for that
> individual
> > >> RB entry (api/review-requests/<rb entry>/reviews).  Both URL's work
> fine,
> > >> returning appropriate XML when pasted into a browser.
> >
> > >> Both of the URL's worked fine with a previous ReviewBoard
> installation of
> > >> version 1.4.x.
> >
> > >> Here's a snippet of code that fails with the 405:
> >
> > >> #!/usr/bin/env python
> >
> > >> import urllib2
> >
> > >> url = "http://reviewboard/api/**review-requests/6721/<
> http://reviewboard/api/review-requests/6721/>
> > >> "
> > >> header = {'Accept': "application/xml"}
> > >> request = urllib2.Request(url, "", header)
> > >> f = urllib2.urlopen(request)
> > >> xml = f.read()
> > >> f.close()
> > >> print xml
> >
> > >> (replace reviewboard in the URL with the correct system name, redacted
> > >> for security)
> >
> > >> Traceback (most recent call last):
> > >>   File "./t.pl", line 8, in <module>
> > >>     f = urllib2.urlopen(request)
> > >>   File "/usr/lib/python2.7/urllib2.**py", line 126, in urlopen
> > >>     return _opener.open(url, data, timeout)
> > >>   File "/usr/lib/python2.7/urllib2.**py", line 400, in open
> > >>     response = meth(req, response)
> > >>   File "/usr/lib/python2.7/urllib2.**py", line 513, in http_response
> > >>     'http', request, response, code, msg, hdrs)
> > >>   File "/usr/lib/python2.7/urllib2.**py", line 438, in error
> > >>     return self._call_chain(*args)
> > >>   File "/usr/lib/python2.7/urllib2.**py", line 372, in _call_chain
> > >>     result = func(*args)
> > >>   File "/usr/lib/python2.7/urllib2.**py", line 521, in
> http_error_default
> > >>     raise HTTPError(req.get_full_url(), code, msg, hdrs, fp)
> > >> urllib2.HTTPError: HTTP Error 405: Method Not Allowed
> >
> > >> If I simply add "/reviews" to the URL, it works fine and I get the XML
> > >> returned with all the reviews.  Incidentally, I also get a 405 when
> > >> accessing a RB user's set of XML (api/users/<rb username>).
> >
> > >> This has been driving me nuts, so any help would be greatly
> appreciated!
> >
> > >> Thanks,
> > >> Ken
> >
> > >>  --
> > > Want to help the Review Board project? Donate today at
> > >http://www.reviewboard.org/donate/
> > > Happy user? Let us know athttp://www.reviewboard.org/users/
> > > -~----------~----~----~----~------~----~------~--~---
> > > To unsubscribe from this group, send email to
> > > reviewboard+unsubscr...@googlegroups.com
> > > For more options, visit this group at
> > >http://groups.google.com/group/reviewboard?hl=en
>
> --
> Want to help the Review Board project? Donate today at
> http://www.reviewboard.org/donate/
> Happy user? Let us know at http://www.reviewboard.org/users/
> -~----------~----~----~----~------~----~------~--~---
> To unsubscribe from this group, send email to
> reviewboard+unsubscr...@googlegroups.com
> For more options, visit this group at
> http://groups.google.com/group/reviewboard?hl=en
>

-- 
Want to help the Review Board project? Donate today at 
http://www.reviewboard.org/donate/
Happy user? Let us know at http://www.reviewboard.org/users/
-~----------~----~----~----~------~----~------~--~---
To unsubscribe from this group, send email to 
reviewboard+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/reviewboard?hl=en

Reply via email to