Re: HTTP 405, Method Not Allowed

2012-03-29 Thread Christian Hammond
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  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  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 
> 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/), yet it
> works
> > >> just fine when I request the XML for the set of reviews for that
> individual
> > >> RB entry (api/review-requests//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 
> > >> 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/).
> >
> > >> 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.re

Re: HTTP 405, Method Not Allowed

2012-03-29 Thread Ken Klingman
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  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  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/), yet it works
> >> just fine when I request the XML for the set of reviews for that individual
> >> RB entry (api/review-requests//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/
> >> "
> >> 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 
> >>     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/).
>
> >> 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


Re: HTTP 405, Method Not Allowed

2012-03-27 Thread Christian Hammond
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  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/), yet it works
>> just fine when I request the XML for the set of reviews for that individual
>> RB entry (api/review-requests//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/
>> "
>> 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 
>> 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/).
>>
>> 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 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

Re: HTTP 405, Method Not Allowed

2012-03-27 Thread Ken Klingman
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/), yet it works 
> just fine when I request the XML for the set of reviews for that individual 
> RB entry (api/review-requests//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/"; 
> 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 
> 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/).
>
> 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 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