Здравствуйте, я хотел отправлять запрос через java "приложение"(на данный момент просто кусок кода). После отправки запроса на сайт
httpbin.org/post мне всё выводится json ответ, а когда посылаю запрос на файл, который обрабатывает данные введённые пользователем на сайте, то ничего нет. Использую Open Server для проверки всего этого.
Сам сайт:
<form action="test.php" method="POST">
<input type="text" name="user_name">
<input type="text" name="user_password">
<select name="city_id">
<option value="1">Саратов</option>
<option value="2">Омск</option>
<option value="3">СПБ</option>
</select>
<input type="submit" value="Отправить данные">
</form>
Обработчик введённых данных:
<?php
$fam = $_POST['fam'];
$lschet = $_POST['lschet'];
$c_id = $_POST['c_id'];
$fam = htmlspecialchars($fam);
$lschet = htmlspecialchars($lschet);
$c_id = htmlspecialchars($c_id);
echo $fam;
echo $lschet;
echo $c_id;
echo "Hi";
?>
Java код:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.HashMap;
import java.util.Map;
public class Main {
public static void main(String[] args) {
String urlAress = "http://form/test.php";
URL url;
HttpURLConnection httpURLConnection;
OutputStream os = null;
InputStreamReader isR = null;
BufferedReader bfR = null;
StringBuilder stringBuilder = new StringBuilder();
try{
Map<String, String> postArgs = new HashMap<>();
postArgs.put("fam", "SGHfdsgdh");
postArgs.put("lschet", "123456789101");
postArgs.put("c_id", "1");
byte[] out = postArgs.toString().getBytes();
url = new URL(urlAress);
httpURLConnection = (HttpURLConnection)url.openConnection();
httpURLConnection.setRequestMethod("POST");
httpURLConnection.setDoOutput(true);
httpURLConnection.setDoInput(true);
httpURLConnection.addRequestProperty("User-Agent", "Mozilla/5.0");
httpURLConnection.addRequestProperty("Content-Type", "application/x-www-form-urlencoded");
httpURLConnection.setConnectTimeout(200);
httpURLConnection.setReadTimeout(200);
httpURLConnection.connect();
try{
os = httpURLConnection.getOutputStream();
os.write(out);
} catch(Exception e){
System.err.print(e.getMessage());
}
if(HttpURLConnection.HTTP_OK == httpURLConnection.getResponseCode()){
isR = new InputStreamReader(httpURLConnection.getInputStream());
bfR = new BufferedReader(isR);
String line;
while((line=bfR.readLine()) != null){
stringBuilder.append(line);
}
}
//System.out.println(postArgs);
int status = httpURLConnection.getResponseCode();
System.out.println(status);
System.out.println(stringBuilder);
} catch(MalformedURLException e){
e.printStackTrace();
} catch(IOException e ){
System.err.print(e.getMessage());
} finally{
try{
isR.close();
} catch(IOException e){
e.printStackTrace();
}
try{
bfR.close();
} catch(IOException e){
e.printStackTrace();
}
try{
os.close();
} catch(IOException e){
e.printStackTrace();
}
}
}
}