Nếu điểm cuối thực sự là một liên kết trực tiếp đến tệp .xls, bạn có thể thử đoạn mã sau để xử lý việc tải xuống:
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;
}
Tất cả các bạn nên cần làm là thiết lập tên thích hợp cho token auth và điền nó trong.
Ví dụ sử dụng:
download(new File("C:\\output.xls"), "http://www.website.com/endpoint");