When to use HTTPSocket get vs. post

I’ve been using myHTTPSocket.Post for years with a certain web site, sending the various request parameters as a form. They’ve obviously changed something on their server, and suddenly this no longer works. But if I issue a myHTTPSocket.Get followed by the parameters as a string it works. I’m trying to understand what happened, and what might have changed on their end so that Post now fails and Get works.

Usually, GET is used when you are retrieving data from the server, and POST is used for uploading data to the server.

That’s what I thought. In this case, I’m submitting a form that initiates a request cycle (it’s a search of the Library of Congress). Post worked for years and suddenly stopped. But Get works (sending the parameters in the Get string as opposed to the form). Another unfathomable Internet mystery.

Probably when their code was first written, the programmer didn’t know any better, and now the code has been revisited for some reason and corrected.