【问题标题】:Identify uploaded document识别上传的文件
【发布时间】:2017-11-15 17:57:17
【问题描述】:

我们在业务应用程序中有页面,客户可以在其中下载 Word 文档、签名并上传回来。 任务是为下载的文档制作一些密钥,以便在上传回来时识别它们。 目前我们考虑在下载时制作二维码,在上传签名文档时制作二维码查找和解码。但我没有使用 qr 的经验,想知道在上传的文档中找到 qr 是否很难? 或者,也许您可​​以提出其他用于识别文件的想法? 感谢任何开箱即用的免费库

【问题讨论】:

  • 如果让我们知道您为什么需要识别文档,我们可以提供更多帮助。是出于安全目的并防止用户向您发送包含恶意代码的word文档吗?或者是检测客户犯了错误还是检测他们签署了它?或者是识别它们并将它们与用户联系起来。如果是识别文档并将其与用户相关联,那么为什么您不在上传表单中向用户询问更多信息?你有用户注册选项吗?

标签: c# image-processing computer-vision qr-code


【解决方案1】:

这个问题没有真正正确或错误的答案;它主要是基于意见的。我能做的就是给你我能做的。

我会控制文件名;如果他们下载、签名并上传一个名为“Form1.docx”的文件,当他们上传文件时,将其重命名为“Form1_170613-2006.docx”,它会告诉您上传的时间。

如果此人在您的系统(或类似系统)中有用户名,您也可以将其附加到文件名中;将其设为“Form1_170613-2006_JohnSmith.docx”。

我见过一些使用 GUID 或 MD5 哈希的系统;在大多数实现中,我并不真正关心这些,因为它们对排序不友好。例外情况是“构造的”GUID 在字符串的开头有一个 DateTime 标记,或者如果您使用的数据库(例如 SQL Server)可以使用可排序的 NewSequentialID 生成 GUID。

至于 QR 码,我认为在您的上下文中没有必要这样做。

【讨论】:

  • 我忘了说客户端会下载文件、签名、扫描和上传。所以名称将在扫描后更改。所以名称和日期时间无法使用
  • 日期和时间将从他们上传时开始。他们可以上传任何他们想要的东西吗?他们是否通过页面上的任何控件指定它是什么?
【解决方案2】:

我将使用Guid.NewGuid() 创建一个 GUID,将其转换为字符串 insert it programmatically into the Word document(最好在页脚中),并将 GUID 也保存在由客户端标识的 DB 行中。

这意味着每次下载文档时,您的网站都必须在将文件发送到客户端之前对其进行修改。

然后您必须担心给定客户端下载文件、对其进行签名并上传,然后以不同方式对其进行签名并再次上传的情况。

不要使用二维码,除非需要有人用肉眼扫描它。

更新

原来他们扫描并上传,因此需要有人进行目视扫描。使用二维码。

【讨论】:

  • 我忘了说客户端会下载文件、签名、扫描和上传。所以名称将在扫描后更改。所以名称和日期时间无法使用
  • 日期/时间不可能是唯一的ID,名字太容易改了。如果他们正在扫描和上传,请使用二维码。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-06-18
  • 2014-03-19
  • 2018-08-02
  • 1970-01-01
  • 1970-01-01
  • 2015-08-29
  • 1970-01-01
相关资源
最近更新 更多