Basic Authentication in Delphi 7 SOAP

by Oct 14, 2004

Back after a break. It's been quite a while since I wrote, so I'll cut to the chase. Question on newsgroups: How do I set username/password for Basic Authentication on SOAP.

Issues: The HTTPRio.HTTPWebNode.UserName and .Password properties are used only in situations where theres a proxy. But let's assume you wanted to use these for basic authentication. You're going to have to set an event handler for HttpRio.HttpWebNode.OnBeforePost. You get a Data parameter here, and this is the HRequest used for sending the data.

All you now have to do is write something like this in the event handler:

if not InternetSetOption(Data,
Length(HTTPRIO1.HTTPWebNode.UserName)) then

if not InternetSetOption(Data,
Length (HTTPRIO1.HTTPWebNode.Password)) then

You can of course set any other password you want. Note: You need to add WinInet and SOAPHttpTrans to your uses clause.