Jika titik akhir benar-benar merupakan tautan langsung ke file .xls, Anda dapat mencoba kode berikut untuk menangani pengunduhan:
public static boolean download(final File output, final String source) {
try {
if (!output.createNewFile()) {
throw new RuntimeException("Could not create new file!");
}
URL url = new URL(source);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
// Comment in the code in the following line in case the endpoint redirects instead of it being a direct link
// connection.setInstanceFollowRedirects(true);
connection.setRequestProperty("AUTH-KEY-PROPERTY-NAME", "yourAuthKey");
final ReadableByteChannel rbc = Channels.newChannel(connection.getInputStream());
final FileOutputStream fos = new FileOutputStream(output);
fos.getChannel().transferFrom(rbc, 0, 1 << 24);
fos.close();
return true;
} catch (final Exception e) {
e.printStackTrace();
}
return false;
}
Semua Anda harus perlu lakukan adalah mengatur nama yang tepat untuk token auth dan mengisinya.
Contoh penggunaan:
download(new File("C:\\output.xls"), "http://www.website.com/endpoint");