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 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


HTTP 405, Method Not Allowed

2012-03-27 Thread Ken Klingman
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/; 
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 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/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/; 
 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 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