This is just a minimal page that we navigate in response to an HTTP POST.

If the next line is empty after the colon, it probably means that we made a mistake and requested this page with a GET with no query instead of a POST.

The first text field contained: New form text from user
This page was requested with an HTTP GET

============== Back Forward List ==============
        http://127.0.0.1:8000/navigation/postredirect-basic.html
        http://127.0.0.1:8000/navigation/resources/success200.html
curr->  http://127.0.0.1:8000/navigation/resources/postresult.pl?submitwithpostredirect=Submit%20with%20POST%20followed%20by%20a%20redirect&textfield1=New%20form%20text%20from%20user&textfield2=&radiogroup1=female&checkbox2=on&selectgroup1=fiat&textarea1=More%20new%20form%20text%20from%20user%2C%20which%20should%20be%20restored%20when%20we%20return%20to%20this%20page.&redirectHappened=true
===============================================
