SAPUI5自动上传文件

2020-09-03 01:51发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)大家好, 在我的应用程序中,我...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


大家好,

在我的应用程序中,我具有一项功能,可让我从桌面上载文本文件,然后显示一个包含文本文件内容的对话框。

但是,我想使其自动化,以便应用程序将自动从桌面获取文件。 我尝试执行HTTP请求,但是它给了我一个CORS策略:由于URL主机名与我正在访问的URL(C:驱动器)不同,因此跨源请求错误


有什么方法可以执行此过程吗? 我在下面提供了我的代码。

CONTROLLER.JS

 onChange:函数(e){
 var file = e.getParameter(" files")&& e.getParameter(" files")[0];
         如果(文件&& window.FileReader){
 var reader = new FileReader();
 var that = this;
 reader.onload =函数(evn){
 var strCSV = evn.target.result; //CSV字符串
 警报(strCSV);
 };
 reader.readAsText(file);
 }
 },

VIEW.XML

  

谢谢。

5条回答
代楠1984
2020-09-03 02:01

嗨,苏尼尔!

您尝试做的事情看起来很简单,但是有两个主要问题使事情变得相当复杂:

1)除非用户明确选择文件(例如,从上载字段中选择文件),否则现代浏览器将阻止对本地文件系统的访问:这是一项重要的安全功能,因为您通常不希望执行JavaScript代码 通过恶意网站来处理您的文件。

2)浏览器还将阻止JavaScript代码以访问位于另一个域上的资源(出于安全原因),除非满足多个条件。

您可以在以下文章中找到有关此主题以及如何启用跨域资源共享(CORS)的更多信息:跨域资源共享(CORS)

我认为,实现您的功能的一种可能选择是开发

a)通过本地Web服务器公开的启用了CORS的Web服务

b)或 NodeJS模块

可以从UI5应用程序中调用来访问文件系统。 应该采取很多预防措施(身份验证,限制的文件系统访问和权限...),因为这可能会带来严重的安全漏洞。

如果有人有更简单的解决方案,我也想听听!

一周热门 更多>