Running my modified fork of suds trunk/default, and according to the
SOAP interface provider, suds is sending GET requests instead of POSTs
for invoking methods. Obviously GETting the WSDL is fine, but the
sysadmin sent me these log messages:
[20/Apr/2009:19:07:38 -0400] "GET /edatafeed/EDataFeed?wsdl HTTP/1.1" 200 78058
[20/Apr/2009:19:08:39 -0400] "GET /edatafeed/EDataFeed HTTP/1.1" 500 227
[20/Apr/2009:19:09:00 -0400] "GET /edatafeed/EDataFeed HTTP/1.1" 500 227
[20/Apr/2009:19:09:36 -0400] "GET /edatafeed/EDataFeed HTTP/1.1" 500 227
[20/Apr/2009:19:13:12 -0400] "GET /edatafeed/EDataFeed HTTP/1.1" 500 227
[20/Apr/2009:19:23:45 -0400] "GET /edatafeed/EDataFeed HTTP/1.1" 500 227
I added the following patch to suds/transport/http.py to get more
logging and it reports POST as expected:
diff -r 57b4aebd6109 suds/transport/http.py
--- a/suds/transport/http.py Mon Apr 20 19:16:18 2009 -0700
+++ b/suds/transport/http.py Tue Apr 21 12:17:10 2009 -0700
@@ -74,6 +74,7 @@
self.__addcookies(u2request)
self.__setproxy(url, u2request)
request.headers.update(u2request.headers)
+ log.debug('method: %s', u2request.get_method())
log.debug('sending:\n%s', request)
fp = self.__open(u2request)
self.__getcookies(fp, u2request)
I'm not sure I follow all that code, but I don't understand how the
request somehow becomes a GET *after* that line.
I'm setting up a SOAP client service with WSSE and a username/password
and just calling:
c.service.someGetter()
Any ideas? (Using Ubuntu and Python 2.6.2)
Show replies by date