【问题标题】:read local JPG file within browser在浏览器中读取本地 JPG 文件
【发布时间】:2013-08-21 11:24:14
【问题描述】:

我真的在这个问题上苦苦挣扎:如果答案就在我面前,请原谅我。

我正在尝试寻找通过 ajax 上传 JPG 文件的最简单方法。我只需要字节数组,稍后我可以处理:挑战,我需要能够在 javascript 中完成所有(或大部分)操作:我看过的大多数解决方案都使用我无法使用的 php 脚本。我真的只需要一个以后可以处理的字节流。

我查看了诸如thisthis one 之类的解决方案,但都没有取得多大成功。我真的不需要它做太多事情:我只需要字节数组,并且不会发生回发:如果我需要在最终提交时(在选择图像之后)获取字节数组,那也可以:我只是不知道如何从客户端的 asp:FileUpload 元素中提取信息,如果文件尚未上传。

谢谢大家。

【问题讨论】:

  • 如果您在现代浏览器中,您可以使用 javascript 获取文件数据,虽然我不确定您可以获得 什么 数据,但我没有搞砸由于需要支持不支持该 api 的浏览器,因此使用该 api。 developer.mozilla.org/en-US/docs/Web/API/File
  • 如果您不想进行回发,请停止将其称为上传。没有回发,就不是上传。这可能就是您在查找搜索结果时遇到问题的原因。此外,如果您不进行回发,那么 .net 或 php 绝对无法为您做任何事情。您可以访问的只是可以在客户端上运行的东西,例如 javascript、css、html、html5 api、canvas、svg、flash 等。
  • 我遇到了一个叫做FileReader 的东西,它可以让我读取文件的内容。

标签: jquery .net


【解决方案1】:

如果没有服务器端脚本,例如 PHP、ASP、java 等,您将无法真正进行任何类型的服务器操作。如果是这样的话,这将是一个重大的安全问题,因为任何人都可以将任何内容上传到主机(服务器)。

对于你想要抓取的某些数据,你可以使用 Actionscript 3 来拉取图像数据(但它需要用户安装 Adob​​e Flash)

【讨论】:

  • 我明白这一点。我正在使用 ASP .NET。我一直在努力寻找一个简单的 ASP .NET 解决方案,实际上它归结为。
  • 这很好 - 这只是一个时间问题,并且表单提交主要在 javascript 中处理:我只需要从服务器端(以某种方式)提取该信息,我猜。
【解决方案2】:

能够使用 asp:FileUpload 对象执行此操作,并且无需回发。使用javascript的FileReader。使用 FileReader,只要最终用户选择了一个文件,文件信息(例如字节)就可供 javascript 使用,并且可以读取。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-05-11
    • 1970-01-01
    • 2013-04-14
    • 1970-01-01
    • 2020-11-20
    • 2021-11-28
    • 2011-05-08
    • 2013-08-28
    相关资源
    最近更新 更多