http staus 301 для некоторых URL - PullRequest
0 голосов
/ 08 марта 2011

Мое приложение - это онлайн-радио. Когда я пытаюсь подключить свое приложение к http-серверу по некоторым URL-адресам, возвращается «httpstatus» - 301. Но для некоторых других URL-адресов на том же http-сервере это прекрасно. Метод, который я использовал:

public  InputStream getHttpConnectionStream(String url){        
    String newUrl= url+getUrlAppend();

    StreamConnection streamConnection=null;
    InputStream inputStream=null;
    InputStream ips = null;
    String result="";
    try {
        streamConnection=(StreamConnection)Connector.open(newUrl,Connector.READ);
        HttpConnection httpConnection=(HttpConnection)streamConnection;
        httpConnection.setRequestMethod(HttpConnection.POST);
        int httpStatus=httpConnection.getResponseCode();
        if(httpStatus<HttpConnection.HTTP_OK){  //==HttpConnection.HTTP_OK
            inputStream = httpConnection.openInputStream();
            ips=inputStream;                                    
            return ips; 
        }
    } catch (IOException e) {           

    }
    return ips;
}

Здесь getUrlAppend () - это метод, который возвращает строку, специфичную для способа подключения приложения к серверу. Если httpStatus равен 301, я получаю только нулевой InputStream.

Как я могу определить статус http, Может ли кто-нибудь мне помочь?

1 Ответ

4 голосов
/ 08 марта 2011

В соответствии со спецификацией HTTP / 1.1 код состояния 301 указывает, что элемент, который вы пытаетесь найти, постоянно перемещен.Сервер должен предоставить вам новое местоположение в заголовке ответа HTTP.Ваше приложение должно будет проанализировать заголовок ответа для нового местоположения и выполнить новое подключение к этому новому местоположению.

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