jsp页面如何用js获取上传文件的真实路径,不通过修改浏览器设置的方式

JavaScript028

jsp页面如何用js获取上传文件的真实路径,不通过修改浏览器设置的方式,第1张

你应该回去找提供你这段代码的网页,看一下getPath函数的参数obj是什么,输入参数有什么要求。

就这段代码看,obj应该是一个对象,并且这个对象有select()方法;而恰好jQuery对象就有select()方法,有可能(仅仅是有可能)你需要将obj包装成jQuery对象后,再作为getPath函数的参数代入试试。

提示:

dom对象转为jQuery对象:有dom元素el,通过$(el)操作就可以转为jQuery对象

无法获取本地文件的绝对路径,这里涉及到一个浏览器安全问题。

<input type="file" onchang="javascript:changeFile()" />

// 选择文件

function changeFile () {

    var e = this

    // 修正IE8下,文件上传异常

    var files = e.files

    if (files == undefined) {

        return false

    }

    // 取得选择文件相关数据信息

    var file = files[0], fileName = file.name, fileSize = file.size

    // 获取文件后缀名

    var fileType = fileName.substr(fileName.lastIndexOf(".")).toLowerCase()

}

如果你直接使用 javascript 将阿里云的accessId、accessKey写在页面上是不安全的,你可以使用后台存储这些敏感的信息,官网有相关的SDK ,你可以选择你常用的。

我使用的Java

流程:首先先访问你的后台获取到相关的凭证,将凭证携带发送到你的OSS,如果你要调用回调函数,在你的后台需要开启回调函数功能,

在后台编写你的回调函数,将回调函数凭证信息返回给前端,前端使用回调函数凭证访问OSS,就可以获取到回调函数信息。