Utilizzo di Apache's common-httpclient per Java, qual è il modo migliore per aggiungere parametri di query a un'istanza GetMethod? Se sto usando PostMethod, è molto semplice:Come aggiungere parametri di query a GetMethod (utilizzando Java commons-httpclient)?
PostMethod method = new PostMethod();
method.addParameter("key", "value");
GetMethod non dispone di un metodo di "addParameter", però. Ho scoperto che questo funziona:
GetMethod method = new GetMethod("http://www.example.com/page");
method.setQueryString(new NameValuePair[] {
new NameValuePair("key", "value")
});
Tuttavia, la maggior parte degli esempi che ho visto o hard-code i parametri direttamente nella URL, ad esempio:
GetMethod method = new GetMethod("http://www.example.com/page?key=value");
o hard-code il stringa di query, ad esempio:
GetMethod method = new GetMethod("http://www.example.com/page");
method.setQueryString("?key=value");
Uno di questi modelli è preferibile? E perché la discrepanza API tra PostMethod e GetMethod? E quali sono tutti gli altri metodi HttpMethodParams per i quali è stato concepito?
ho scoperto che questo funziona: metodo GetMethod = new GetMethod ("http://www.example.com/page"); method.setQueryString (new NameValuePair [] { new NameValuePair ("chiave", "valore") }); Tuttavia, questo non è menzionato nella pagina del tutorial. Questo modello dovrebbe essere evitato? – Ross
Hm, apparentemente non puoi inserire blocchi di codice nei commenti, quindi ho modificato la mia domanda per aggiungere quell'esempio e altri. – Ross