PaulS:
message += server.args(); //Get number of parametersThat is NOT what that function does.
I'd have said that that was a pretty fair description of the args() method, but would probably have coded it in a less ambiguous way:
message += String( server.args() ) ;
Maybe you read it as the arg() method or then I am missing something.
Robin2:
It is not a good idea to use the String (capital S) class on an Arduino as it can cause memory corruption in the small memory on an Arduino. Just use cstrings - char arrays terminated with 0....R
Here we go again. Is anyone prepared to rewrite the ESP8266WebServer class or indeed the entire ESP8266 Arduino Core so that it is "String free" ?