我有一个API端点和该API的授权令牌。
上述API是用于。xls报告下载,我如何使用(如果可能的话)邮差查看下载的。xls文件?
如果不可能使用邮差,我应该寻找的其他编程方式是什么?
我有一个API端点和该API的授权令牌。
上述API是用于。xls报告下载,我如何使用(如果可能的话)邮差查看下载的。xls文件?
如果不可能使用邮差,我应该寻找的其他编程方式是什么?
当前回答
在postman -你是否尝试过将头元素“Accept”添加为“application/vnd.ms-excel”
其他回答
您可以保存的回应(pdf,doc等.)通过选项右侧的回应在邮差 检查这张图片
欲了解更多详细信息,请查看此
https://learning.getpostman.com/docs/postman/sending_api_requests/responses/
尝试在请求时选择发送和下载而不是发送。(蓝色按钮)
https://www.getpostman.com/docs/responses
“对于二进制响应类型,您应该选择发送并下载,这样您就可以将响应保存到硬盘上。然后你可以使用适当的查看器查看它。”
对于UI,在邮递员中选择发送和下载按钮而不是发送按钮:
在postman -你是否尝试过将头元素“Accept”添加为“application/vnd.ms-excel”
如果端点确实是到.xls文件的直接链接,您可以尝试以下代码来处理下载:
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;
}
您所需要做的就是为认证令牌设置正确的名称并填写它。
使用示例:
download(new File("C:\\output.xls"), "http://www.website.com/endpoint");