Как заголовок, я хочу реализовать веб-сервер на Java, единственная проблема в том, что мне нужно опубликовать форму в login.php, а затем получить ответ.Следующий код показывает, как я отправляю данные в PHP.
URL url = new URL("http://127.0.0.1:6789" + req.uri);
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
// Convert string to byte array, as it should be sent
// req.form is the form data to post to the login.php
byte[] postDataBytes = req.form.getBytes(StandardCharsets.UTF_8);
// set the form from request as the post data to PHP
conn.setDoOutput(true);
conn.setDoInput(true);
conn.setRequestMethod("POST");
conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
conn.setRequestProperty("Content-Length", String.valueOf(postDataBytes.length));
conn.getOutputStream().write(postDataBytes);
// get response
int code = conn.getResponseCode();
InputStream is;
if (code == 200) {
is = conn.getInputStream();
fillHeaders(Status._200_);
} else {
is = conn.getErrorStream();
fillHeaders(Status._404_);
}
// get response conetent length from login.php
int length = conn.getContentLength();
Содержание файла login.php очень простое:
<?php
echo 'User name is:' . $_POST['loginName'];
?>
Когда я отлаживаю эту часть, я останавливаюсь вэта строка
int code = conn.getResponseCode();
Это означает, что я не могу получить ответ от login.php
Итак, как я могу изменить код или среду ubuntu (может быть, версию php?), чтобы решить эту проблему?проблема.
Thx.XD