我一直在这个网站上冲浪,寻找一个例子或“隧道尽头的光”,关于如何编写代码,让我从 PHP 的 REST 服务器下载文件到 JAVA 的客户端。
客户端将使用文件 ID 发出 GET 请求,然后 PHP REST 代码应响应该文件,JAVA 接收该文件并将其存储在硬盘中。
任何想法...?我试着做这样的PHP Rest服务器......:
$file = 'path_to_file/file.mp3';
$content = readfile($file);
而这个 $content var,作为响应发送......
客户...我写的是:
try {
URL url = new URL("url/to/rest/server");
HttpURLConnection conn (HttpURLConnection) url.openConnection();
conn.setRequestMethod("GET");
conn.setRequestProperty("Accept", "Content-Disposition: filename\"music.mp3\"");
if(conn.getResponseCode() != 200) {
throw new RuntimeException("Failed : HTTP error code: " + conn.getResponseCode());
}
BufferedReader br = new BufferedReader(new InputStreamReader((conn.getInputStream())));
try {
String output;
File newFile = newFile("/some/path/file.mp3");
fileWriter fw = new FileWriter(newFile);
while ((output = br.readLine()) != null) {
fw.write(output);
}
fw.close();
} catch (IOException iox) {
//do
}
} catch (MalformedURLException e) {
//do
}
我的示例的问题是,当我收到客户端上的文件有点损坏或其他东西时!...在我的 mp3 文件示例中,客户端上的任何音乐播放器都说该文件已损坏或无法正常工作.
谢谢你的帮助。