# Zwischen GET und POST unterscheiden



## marasek (11. Okt 2009)

Hallo,

wenn ich ein POST /foo/bar?page=baz HTTP/1.1 abschicke, dann finde ich in HttpServletRequest.getParameterMap() sowohl die POST als auch die GET-Parameter.

Gibt es eine Möglichkeit, diese Parameter nach GET und POST getrennt zu bekommen? (ausser den Querystring selber zu parsen)


----------



## maki (11. Okt 2009)

> Gibt es eine Möglichkeit, diese Parameter nach GET und POST getrennt zu bekommen? (ausser den Querystring selber zu parsen)


Kenne keine, sollte aber nciht wirklich notwendig sein, oder etwa doch?


----------



## marasek (11. Okt 2009)

maki hat gesagt.:


> Kenne keine, sollte aber nciht wirklich notwendig sein, oder etwa doch?



Das ist schon öfters Anlass zu hitzigen Diskussionen gewesen. Ich persönlich favorisiere es, "notwendig" im Sinne von "zwingend erforderlich" ist es wohl nicht.


----------



## maki (11. Okt 2009)

Naja, kenne keine solchen Diskussionen, aber sobald Daten per POST  mitgeschickt werden, wird der Request als POST behandelt, kann gut sein dass dann eventuelle GET Parameter wie POST Daten behandelt werden.

Wenn man nun nicht von "notwendig" oder "Favouriten" spricht sondern von "sinnvoll", meinst du du schafft es mir zu erklären wo dass der Fall wäre?


----------



## Noctarius (12. Okt 2009)

Auch ich kenne keine dieser Diskussionen. Das man in PHP per $_GET[] und $_POST[] einzeln drauf zugreifen kann macht für mich die Sache nicht nötiger / sinnvoller, zumal die meisten PHP Frameworks die Escapen beide Varianten zusammen behandeln (also auch wieder zusammen werfen).


----------



## marasek (12. Okt 2009)

Im ungünstigsten Fall kann eine POST-Variable eine GET-Variable überschreiben, das finde ich doch etwas unpraktisch.
Kommt natürlich auch darauf an, wie man den Seitenaufruf generell handhabt.


----------



## maki (12. Okt 2009)

marasek hat gesagt.:


> Im ungünstigsten Fall kann eine POST-Variable eine GET-Variable überschreiben, das finde ich doch etwas unpraktisch.
> Kommt natürlich auch darauf an, wie man den Seitenaufruf generell handhabt.


In so einem Fallbekommt man beide Werte zurück, kann aber nicht mehr unterscheiden welcher aus der URL stammt und welcher aus den Post Daten.

Im allgemeinen soltle man es unbedingt vermeiden Variablen mehrfach zu belegen 
Dann braucht man auch nciht solche Unterscheidungen zu treffen...


----------



## JanHH (16. Okt 2009)

Ist die Unterscheidung ob es Post oder Get war nicht absolut banal, weil unterschiedliche Service-Methoden des Servlets aufgerufen werden?


----------



## maki (16. Okt 2009)

JanHH hat gesagt.:


> Ist die Unterscheidung ob es Post oder Get war nicht absolut banal, weil unterschiedliche Service-Methoden des Servlets aufgerufen werden?


Dem TS geht es darum, das ein POST abgeschickt wird der auch noch GET Daten enthält, nun wüsste er gerne woher die Daten stammen, das geht imho nicht so einfach, ist imho aber auch nicht wichtig.


----------



## JanHH (16. Okt 2009)

Na das hab ich dann wohl falsch verstanden.


----------

