See my similar, yet unanswered question at https://www.experts-exchange.com/topics/comp/networks/windowsnt/Q.10076123
To maintain the Client State, you may use a SessionID number in the query string.
There must not be HTML pages in between.
Now I found that at http://www.baukreis.de
the Client State is maintained (a) without query string, and (b) though there are HTML pages in between.
HOW DO THEY DO THIS?
They are sending a unique HTTP header tag (the SessionID).
(I know how to send a HTTP header tag.)
Seems to be done by manipulating the server, because it obviously works with HTML pages not produced, too.
Could be the same mechanism as client authentification...
I am using ASP on II-Server, but would be glad just to understand the principles.