Anfon POST ffurflen drwy brocsi HTTP gyda Java HttpURLConnection
Agorwch gysylltiad gyda phrocsi HTTP penodol, dewiswch POST, ysgrifennwch gorff y ffurflen ac archwiliwch ei chanlyniad HTTP.
Mae openConnection(proxy) yn adeiladu'r cysylltiad gyda llwybr. Gosodwch y dull HTTP a'r corff ar yr HttpURLConnection a ddychwelwyd cyn cychwyn y cais:
Proxy route = new Proxy(Proxy.Type.HTTP,
new InetSocketAddress("proxy.example", 8080));
HttpURLConnection connection = (HttpURLConnection)
URI.create("http://www.example.com/submit").toURL().openConnection(route);
try {
connection.setConnectTimeout(5000);
connection.setReadTimeout(15000);
connection.setRequestMethod("POST");
connection.setDoOutput(true);
connection.setRequestProperty("Content-Type",
"application/x-www-form-urlencoded; charset=UTF-8");
byte[] form = "message=hello+proxy".getBytes(StandardCharsets.UTF_8);
try (OutputStream out = connection.getOutputStream()) {
out.write(form);
}
int status = connection.getResponseCode();
System.out.println(status);
InputStream response = status >= 400
? connection.getErrorStream() : connection.getInputStream();
if (response != null) response.close();
} finally {
connection.disconnect();
}Mae'r enghraifft yn anfon ffurflen fach, yn argraffu ei statws ac yn cau ffrwd ymateb nas defnyddiwyd. Amnewidiwch y cam olaf hwnnw â thriniaeth corff ymateb yr ap pan fo angen y corff.
Mae enw gwesteiwr a phorth y procsi yn perthyn i route. Ar gyfer prawf ffurflen gyhoeddus a ganiateir heb gyfrif procsi, dewiswch y cyfeiriad HTTP o gofnod yn y rhestr procsi HTTP. Mae'r URL yn aros yn bwynt terfyn y ffurflen. Ar gyfer gwerthoedd ffurflen dynamig, defnyddiwch URLEncoder i amgodio pob gwerth yn lle uno mewnbwn heb ei ddianc â marc hafal a marc ampersand.
Mae'r ffrwd allbwn yn anfon y beitiau a baratowyd. Darllenwch y statws ar ôl ysgrifennu a chau, yna dewiswch y ffrwd ymateb arferol neu'r ffrwd gwall yn ôl yr angen. Gall ymateb HTTP aflwyddiannus gynnwys cynnwys gwall defnyddiol gan yr ap neu'r procsi.