Запрос HTTP Http Post не дает мне выходной: нет ответа или ошибки - PullRequest
0 голосов
/ 02 апреля 2019

Я пытаюсь создать HTTP-запрос на публикацию, он также должен работать, но я не получаю ответа со страницы (с браузером он работает нормально). Код следующий:

            try {
                URL site = new URL("https://google.com");
                HttpsURLConnection conn = (HttpsURLConnection) site.openConnection();
                conn.setConnectTimeout(1000);
                conn.setRequestMethod("POST");
                conn.setRequestProperty("Host", "www.example.com");
                conn.setRequestProperty("User-Agent",
                        "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.14; rv:65.0) Gecko/20100101 Firefox/65.0");
                conn.setRequestProperty("Accept-Language", "en-EN,en;q=0.8,en-US;q=0.5,en;q=0.3");
                conn.setRequestProperty("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8");
                conn.setRequestProperty("Referer", "https://google.com");
                conn.setDoOutput(true);
                conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
                conn.setRequestProperty("Connection", "close");
                conn.setRequestProperty("Upgrade-Insecure-Requests", "1");
                conn.setInstanceFollowRedirects(true); 
                HttpsURLConnection.setFollowRedirects(true);

                for (String string : this.Cookie) {
                //my own working cookies    conn.setRequestProperty("Cookie", string);
                }

                OutputStream os = conn.getOutputStream();
                os.write(post_request.getBytes());
                os.flush();

                if (conn.getResponseCode() != HttpURLConnection.HTTP_CREATED) {
                    throw new RuntimeException("Failed : HTTP error code : " + conn.getResponseCode());
                }

                BufferedReader br = new BufferedReader(new InputStreamReader((conn.getInputStream())));

                String output;
                System.out.println("Output from Server .... \n");
                while ((output = br.readLine()) != null) {
                    System.out.println(output);
                }
                conn.disconnect();

            } catch (IOException ex) {
                System.out.println("Unable to reach the site: Because of: " + ex.getMessage());
            }

Когда мой код отправляет запрос, если я пытаюсь получить код ответа или прочитать полученный HTML-код:

Unable to reach the site Because of: connect timed out

Я ожидаю, что код ответа и вывод HTML страницы также будут неправильными, если параметры публикации, но результат не является ожидаемым. Если я удаляю попытку получить код ответа и попытку получить код ответа HTML с помощью BufferedReader, это не истекает, но почтовый запрос все равно не отправляется.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...