String Parsing - What am I messing up?

  // Read the first line of the request
  String request = client.readStringUntil('\r');
  Serial.println(request);
  client.flush();

This is where you would put the code I posted. There is no reason to save the client request in a String when all you want is the value between the = and the &.

If you want other stuff, then parse request, not readString.