Как передать параметры в get запрос на java?

Пользователь

от amaya_bahringer , в категории: Java , 3 месяца назад

Как передать параметры в get запрос на java?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от jamey.kohler , 3 месяца назад

@amaya_bahringer 

Для передачи параметров в GET-запросе на Java необходимо использовать класс HttpURLConnection и сформировать URL-адрес с параметрами.


Пример:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
import java.net.*;
import java.io.*;

public class GetRequestDemo {
    public static void main(String[] args) {
        try {
            String url = "https://example.com/api?param1=value1&param2=value2";
            URL obj = new URL(url);
            HttpURLConnection con = (HttpURLConnection) obj.openConnection();
            con.setRequestMethod("GET");
            BufferedReader in = new BufferedReader(new InputStreamReader(con.getInputStream()));
            String inputLine;
            StringBuffer response = new StringBuffer();
            while ((inputLine = in.readLine()) != null) {
                response.append(inputLine);
            }
            in.close();
            System.out.println(response.toString());
        } catch (Exception e) {
            System.out.println(e);
        }
    }
}


В данном примере мы создаем URL-адрес с двумя параметрами param1 и param2 со значениями value1 и value2 соответственно. Далее мы создаем объект класса HttpURLConnection и выполняем GET-запрос с помощью метода setRequestMethod("GET"). Затем мы считываем ответ от сервера и выводим его в консоль.


Можно также использовать класс URLEncoder для кодирования параметров, чтобы избежать ошибок при передаче специальных символов.


Пример:

1
2
3
String param1 = "hello world";
String encodedParam1 = URLEncoder.encode(param1, "UTF-8");
String url = "https://example.com/api?param1=" + encodedParam1;


В этом примере значениям параметра param1 присваивается значение hello world. Затем оно кодируется методом URLEncoder.encode() с указанием кодировки UTF-8, и добавляется в URL-адрес.