Wenn du statt 301 ein 308 als Antwort lieferst, dann sollte die Umleitung so funktionieren, dass das POST erhalten bleibt, siehe
bei MDN. Ich hatte das Problem bei einem Programm von mir selber auch und konnte das so, da ich auch Zugriff auf den Server hatte, am einfachsten lösen. Klar, irgendwas mit 404 oder 301 und dann selber auswerten ging auch, aber so war es am einfachsten.