Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / Отправка GET запроса / 9 сообщений из 9, страница 1 из 1
07.03.2015, 07:50
    #38897784
SkyPrince
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отправка GET запроса
Всем привет!

Java для меня не является специализированным языком, поэтому вопрос нубский до безобразия, прошу простить =)
Информация по этому языку очень расплывчата и выбрать то что нужно сложно =)

В общем нужно просто отправить одну переменную на одну страничку GET запросом, без обратной связи, например переменную - "var1":

http://www.sql.ru?user=var1

Обратная связь не требуется, спасибо за понимание!

Нарыл кое-какой код, но где прописывать переменные и ссылку не понимаю :(




Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
import java.io.*;
import java.net.*;
 
public class c {
 
   public String getHTML(String urlToRead) {
      URL url;
      HttpURLConnection conn;
      BufferedReader rd;
      String line;
      String result = "";
      try {
         url = new URL(urlToRead);
         conn = (HttpURLConnection) url.openConnection();
         conn.setRequestMethod("GET");
         rd = new BufferedReader(new InputStreamReader(conn.getInputStream()));
         while ((line = rd.readLine()) != null) {
            result += line;
         }
         rd.close();
      } catch (Exception e) {
         e.printStackTrace();
      }
      return result;
   }
 
   public static void main(String args[])
   {
     c c = new c();
     System.out.println(c.getHTML(args[0]));
   }
}
...
Рейтинг: 0 / 0
07.03.2015, 08:23
    #38897787
Музаффар
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отправка GET запроса
SkyPrince,

на сколько я понял Вы собираетесь все это дело делать на Web?
если да то примерно вот так:
на *.html или же на *.jsp и т.д.
Код: html
1.
<a href="servlet?var1=1">ssilka</a>


или с помощью формы...
а дальше сервлет, в нашем случае будет примерно Servlet.java
и там
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
public class FindAbit extends HttpServlet {
    private static final String CONTENT_TYPE = "text/html; charset=UTF-8";

    public void init(ServletConfig config) throws ServletException {
        super.init(config);
    }

    public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        String var1 = "";
        try {
            var1 = request.getParameter("var1");
        } catch (Exception e) {
            e.printStackTrace();
        }
        response.setContentType(CONTENT_TYPE);
        PrintWriter out = response.getWriter();
        out.println("<html>");
        out.println("<head><title>FindAbit</title></head>");
        out.println("<body>");
        out.println("<p>var1 =" + var1 + "</p>");
        out.println("</body></html>");
        out.close();
    }
}



ну примерно вот так, могу ошибиться... :)
...
Рейтинг: 0 / 0
07.03.2015, 09:35
    #38897799
Музаффар
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отправка GET запроса
SkyPrince,

Прошу прошение, т.к. пример не совсем правильный, есть ошибки... ну вообщем вместо FindAbit должен быть Servlet , а вместо doPost должен быть doGet и тогда вроде все будет правильно.
З.Ы. я взял из имеющегося проекта из-за этого такая ошибка... :)
...
Рейтинг: 0 / 0
07.03.2015, 09:39
    #38897800
SkyPrince
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отправка GET запроса
МузаффарSkyPrince,

Прошу прошение, т.к. пример не совсем правильный, есть ошибки... ну вообщем вместо FindAbit должен быть Servlet , а вместо doPost должен быть doGet и тогда вроде все будет правильно.
З.Ы. я взял из имеющегося проекта из-за этого такая ошибка... :)

Может немножко не так выразился. Есть код программы, чужой, большой. Вот в него при определенном действии нужно вставить свой код, который просто отправляет одну переменную на определенный PHP скрипт и не мешает дальнейшей работе приложения. Как-то так =)

Спасибо за помощь.
...
Рейтинг: 0 / 0
07.03.2015, 10:27
    #38897811
SkyPrince
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отправка GET запроса
P. S. Можно передать переменную POST запросом, это не принципиально, главное зафиксировать ее в базе данных.
...
Рейтинг: 0 / 0
07.03.2015, 11:27
    #38897832
SkyPrince
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отправка GET запроса
В общем решил вопрос отправки так:

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
        URL url;
        HttpURLConnection conn;
        BufferedReader rd;
        String line;
        String result = "";
        try {
           url = new URL("http://site.ru/2.php?user=55");
           conn = (HttpURLConnection) url.openConnection();
           conn.setRequestMethod("GET");
           rd = new BufferedReader(new InputStreamReader(conn.getInputStream()));
           while ((line = rd.readLine()) != null) {
              result += line;
           }
           rd.close();
        } catch (Exception e) {
           e.printStackTrace();
        }



Теперь вопрос попроще:

Как объединить 2 переменные (одна строковая, вторая числовая) вместе с сылкой?
Должно получиться что-то типа:

url = new URL(" http://site.ru/2.php?user=var1&hash=var2");
Где var1 и var2 переменные.
...
Рейтинг: 0 / 0
07.03.2015, 12:13
    #38897849
rdm
rdm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отправка GET запроса
UriBuilder
...
Рейтинг: 0 / 0
07.03.2015, 14:41
    #38897884
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отправка GET запроса
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
        URL url;
        HttpURLConnection conn;
        BufferedReader rd;
        String line;
        String result = "";
        int fuckenIntVar=55;
        String fuckenStringVar="S";
        try {
           url = new URL(format("http://site.ru/2.php?user=%d&string=%s",fuckenIntVar,fuckenStringVar));
           conn = (HttpURLConnection) url.openConnection();
           conn.setRequestMethod("GET");
           rd = new BufferedReader(new InputStreamReader(conn.getInputStream()));
           while ((line = rd.readLine()) != null) {
              //result += line; There is no fucken reason to read response in this case!
           }
           rd.close();
        } catch (Exception e) {
           e.printStackTrace();
        }
...
Рейтинг: 0 / 0
08.03.2015, 04:20
    #38898195
SkyPrince
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отправка GET запроса
Всем огромное спасибо! Очень хороший форум :)
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Отправка GET запроса / 9 сообщений из 9, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]