Bei der Verwendung von Apache's commons-httpclient für Java, wie füge ich am besten Abfrageparameter zu einer GetMethod-Instanz hinzu? Wenn ich PostMethod verwende, ist das sehr einfach:
PostMethod method = new PostMethod();
method.addParameter("key", "value");
GetMethod hat jedoch keine "addParameter"-Methode. Ich habe herausgefunden, dass dies funktioniert:
GetMethod method = new GetMethod("http://www.example.com/page");
method.setQueryString(new NameValuePair[] {
new NameValuePair("key", "value")
});
Die meisten Beispiele, die ich gesehen habe, enthalten jedoch die Parameter direkt in der URL, z.B.:
GetMethod method = new GetMethod("http://www.example.com/page?key=value");
oder codieren den Abfragestring direkt, z.B.:
GetMethod method = new GetMethod("http://www.example.com/page");
method.setQueryString("?key=value");
Welches dieser Muster ist vorzuziehen? Und warum die API-Diskrepanz zwischen PostMethod und GetMethod? Und wofür sollen all diese anderen HttpMethodParams-Methoden verwendet werden?