j2me - 内容 - 处置附件;文件名 - 如何获得它?

时间:2011-01-02 16:34:16

标签: http java-me content-disposition

我正在尝试使用我的j2me应用程序下载由Rails服务器提供的音频文件。 这是我的代码:

try {
    connection = (HttpConnection) Connector.open("http://host.com/user/getaudio/65/");
    connection.setRequestMethod(HttpConnection.GET);
    connection.setRequestProperty("User-Agent", "Profile/MIDP-2.1 Configuration/CLDC-1.1");

    System.out.println("HTTP Response: " + connection.getResponseMessage()); // OK
    System.out.println("HTTP ResponseCode: " + connection.getResponseCode()); // 200
    System.out.println("HTTP ResponseLength: " + connection.getLength()); // -1

    connection.close();

    } catch (IOException e) {
        e.printStackTrace();
    }

HTTP响应正常,代码:200。一切正常,但connection.getLength()返回-1。我已经意识到该文件是通过Content-Disposition标头附加的。 我知道如何通过connection.getHeaderField()来实现它,但下一步是什么? 有可能以某种方式达到它吗?

此致 彼得

1 个答案:

答案 0 :(得分:1)

-1可能意味着事先不知道内容长度。只需从连接中读取,直到没有更多数据。