我正在尝试使用我的 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 header 附加的。 我知道如何使用 connection.getHeaderField() 到达它,但接下来呢? 是否有可能以某种方式达到它?
问候, 彼得
最佳答案
-1 可能意味着内容长度事先未知。只需从连接中读取数据,直到没有更多数据。
关于http - j2me - 内容配置附件;文件名 - 如何得到它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4579315/