DEAR PEOPLE FROM THE FUTURE: Here's what we've figured out so far...

Welcome! This is a Q&A website for computer programmers and users alike, focused on helping fellow programmers and users. Read more

What are you stuck on? Ask a question and hopefully somebody will be able to help you out!
+2 votes

I have experience with SOAP, but all the libraries I used were deprecated and no longer supported. I also have to be able to alter the headers in the requests to insert some authentication details...

So I need to build something new. I'd prefer python, but if someone knows a good, well-supported library, the language matters less to me.

by

2 Answers

+3 votes
 
Best answer

Did you try zeep?

by
selected by
0

This might do the trick. I'll write back after I try it out. Thank you!

+1

That did it. Thank you so much.

+1 vote

I don't see why it shouldn't work. It should be a simple HTTP request with a XML content.

POST ... HTTP/1.1
Content-Type: application/soap+xml; charset=utf-8
SOAPAction: "http://www.w3.org/2003/05/soap-envelope"
[other headers...]

<?xml version="1.0"?>
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope">
    ...
</soap:Envelope>
by
0

Thanks, I tried this also, while trying zeep. It was a good way to double check what I was doing. I could post a known working soap envelop and gradually get zeep to generate the desired xml.

I noticed that some endpoints wanted a slightly different content type (pasted below) without the soapaction header, instead relying on purely on the xmlns.

Content-Type: text/xml; charset=utf-8

0

As far as I know SOAPAction has to be there, unless the endpoint is perhaps configured to accept only plain xml.

0

I think the one I specifically had problems decided to use obfuscation for security. Something written years or decades ago by someone who no longer works there anymore.

Contributions licensed under CC0
...