Получение ответа сервера 405 при попытке прочитать тело ответа - PullRequest
0 голосов
/ 07 февраля 2019

Я пытаюсь прочитать тело ответа на запрос веб-службы, который является методом POST.

Я попытался изменить тип метода на GET, просто чтобы попробовать, даже если это запрос POST, он не работал.Тем не менее, он дает мне код ответа «200», но при попытке прочитать тело ответа читателем я получаю ошибку «405».

Может кто-нибудь дать мне несколько советов по этому поводу.Мне нужно прочитать все тело ответа и затем сохранить один элемент, который представляет собой динамическую буквенно-цифровую строку, в другой файл свойств.

Заранее спасибо.

`

try{
    URL url = new URL(myUrl);
    HttpURLConnection conn = (HttpURLConnection)url.openConnection();
    conn.setRequestMethod(POST);
    conn.connect();
    int respCode = conn.getResponseCode();
    if(respCode != 200)
    {
        System.out.println("connection refused");
    }
    else{
        Scanner sc = new Scanner(url.openStream());
        while(sc.hasNext()){
            inline = sc.nextLine();
            System.out.println(inline);
            sc.close();
        }
}catch(Exception e){
e.prinstackTrace();
}

`

1 Ответ

0 голосов
/ 09 февраля 2019

Коды ответа в форме 4xx являются кодами ошибок клиента.Обычно 405 означало бы «Метод не разрешен», но я видел их иногда, когда клиент также не может понять тип ответа.

Вы должны добавить заголовки - Content-Type и Accept в свой запрос, а затем посмотреть результат.

Это может решить вашу проблему.

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