Как использовать заголовок диапазона HTTP в J2ME? - PullRequest
3 голосов
/ 17 марта 2011
  1. возможно ли использовать заголовок диапазона в HTTP с запросом HTTP GET?
  2. если да, то чем как?

Я просто хочу загрузить байты с сервера с указанными байтами. т.е. если я хочу загрузить байты от 0 до 255.

Ответы [ 2 ]

1 голос
/ 18 марта 2011

См. Этот пример кода,

      HttpConnection connection = null;
      InputStream inputstream = null;
      try
      {
        connection = (HttpConnection) Connector.open(url); // Enter your URL here.
        //HTTP Request
        connection.setRequestMethod(HttpConnection.GET);
        connection.setRequestProperty("Content-Type","//text plain");
        connection.setRequestProperty("Connection", "close");
        // HTTP Response
        System.out.println("Status Line Code: " + connection.getResponseCode());
        System.out.println("Status Line Message: " + connection.getResponseMessage());
        if (connection.getResponseCode() == HttpConnection.HTTP_OK)
        {
          System.out.println(
            connection.getHeaderField(0)+ " " + connection.getHeaderFieldKey(0));        
          System.out.println(
           "Header Field Date: " + connection.getHeaderField("date"));
          String str;
          inputstream = connection.openInputStream();
          int length = (int) connection.getLength();
          if (length != -1)
          {
            byte incomingData[] = new byte[length];
            inputstream.read(incomingData);
            str = new String(incomingData);
          }
          else  
          {
            ByteArrayOutputStream bytestream = 
                  new ByteArrayOutputStream();
            int ch;
            while ((ch = inputstream.read()) != -1)
            {
              bytestream.write(ch);
            }
            str = new String(bytestream.toByteArray());
            bytestream.close();
          }
          System.out.println(str);
        }
      }
      catch(IOException error)
      {
       System.out.println("Caught IOException: " + error.toString());
      }
      finally
      {
        if (inputstream!= null)
        {
          try 
          { 
            inputstream.close();
          }
          catch( Exception error)
          {
             /*log error*/
          }
        }
        if (connection != null)
        {
          try
          {
             connection.close();
          }
          catch( Exception error)
          {
             /*log error*/
          }
0 голосов
/ 17 марта 2011

Вы можете попробовать это:

HttpConnection httpConnection = (HttpConnection) Connector.open("http://www.server.com/file");
httpConnection.setRequestMethod(HttpConnection.GET);
httpConnection.setRequestProperty("Range","0-255");

Проверьте документы: HttpConnection

...