8

我有一个网页,允许用户使用多部分/表单数据(即输入类型=“文件”标签)上传文件。但是,这是一个以我的方式有效地阻止二进制表单数据提交的 Web 内容安全过滤器。

是否可以将二进制形式的数据转换为字符数据(例如base64)发送?如果可能的话,这最好由浏览器通过声明性指令自动完成。我认为不是,但我想我会问。

否则,是否可以通过编程来完成,让一些 JavaScript 拦截表单提交并更改随表单数据上传的文件内容?

最好使用基于 wicket 和/或 jquery 的解决方案。

注意:我不是在问如何在 JavaScript 中进行 base64 编码。请不要在没有真正理解问题的情况下将其标记为重复,就像投票结束我第一次尝试该问题的五个人一样!如何将二进制多部分表单数据作为base64发送?

问题更多是关于如何在多部分表单提交的上下文中进行任何此类编码。

4

1 回答 1

1

好的,经过更多研究后,我将对自己的问题进行回答。

这个关于 SO 的问题间接提供了答案,尽管问题不一样

是否可以从 javascript 中的 <input type=file> 截取文件?

基本上,似乎没有标准的方式(无论如何在 HTML4 中,看起来可能使用 HTML5)从浏览器访问所选文件的实际内容)

因此,上传的文件在发送到浏览器之前不会发生重新编码。

于 2012-06-26T01:48:54.330 回答