在开发时,遇到一个需求,需要将报告的PDF文件导出到服务器
在查看各个api,没有发现直接的方法,后来和同事探究了一个折中的方案
环境:
服务器:window10
javaweb项目
首先前端页面,实现将报表导出文件导出到本地,其中的地址
"Z:\"后面需要使用
var dataStr = JSON.stringify(r.data);
// 获取控制部分报表控件的显示控制
var displayFlag = $.trim(r.data.data[0].displayFlag);
if (displayFlag == "T") {
var realData = r.data.data[0];
intLReport(Report, realData);
}
Report.LoadDataFromXML(dataStr);
// 预设好的保存本地地址
var a = "Z:\\";
// 锐浪导出文件方法 ExportType导出类型,保存文件地址,是否弹出导出框
var exportFalg = Report.ExportDirect(ExportType,a+regRows[i].hisMzCode+"."+ExportName,false,false);
Report.UnprepareExport();
mini.showTips({
content: '<a style="color:#FF0000;font-size:30px;">导出成功!!!</a>',
state: "success",
timeout: "2500"
});
这里的z盘,是我在服务器那里建的共享文件夹
详情可以参考:百度:win10系统共享文件夹
配置好服务器共享文件夹之后,我们将这个共享文件夹映射成驱动器,步骤如下:
第一次配置需要输入账号,可不设置密码,具体共享文件夹设置可以百度,尽可能方便
这里设置的z盘符和第一步导出pdf的地址一样,这样我们在导出pdf文件时,文件就自动导入到我们需要共享文件夹中,进而服务器上也会存在这个文件
这里有个问题,如果其他人使用这台电脑,操作共享文件夹的数据就会存在,删除,修改等问题
这时候我同事就提出一个自动同步的软件
这里推荐一个自动同步的软件
具体下载百度就可以了,使用原理,这个软件可以监控电脑上一个文件夹,然后将这个文件夹上的文件复制(或剪切)到另外一个文件夹,,使用这个软件,就可以解决共享文件夹里面文件安全问题
后面的问题就迎刃而解了,这里推荐一个好的软件,主要用于(Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器)
这里我用这个软件,来实现,通过http来访问我电脑(服务器)上静态资源,主要别人就可以通过url来访问
使用也非常简单
配置方法很简单,直接设置配置文件nginx.conf
这里解释下配置方法:
图片中:
1:表示端口
2:这个img是会去查找3中路径下的img文件夹
3:需要别人访问文件路径
文件准备好了之后,我们开始启动
这里我们直接点击一下,注意这个软件是没有界面的,别认为是软件有问题,闪退了,可以在控制台上看到这个服务
然后直接在游览器上进行访问:
http://localhost:6065/img/1.txt
这样就可以完成对本地(服务器)上静态资源的访问
这里只是提供一个实现的方式,大致思路是这样,肯定有更多更好的方式,也希望大家也能提提意见,大家共同进步!!!