我有一个运行在托管环境中的服务器应用程序,但在客户端的本地网络(在NAT后面;这与此无关)的机制中创建打印作业。如何唯一标识ASP.NET应用程序中的客户机?
为了将打印作业发送到连接到工作站的打印机,我需要识别工作站。用户在工作站之间移动,所以我不能将用户与工作站/打印机永久关联。简单的解决方案是要求用户识别他正在登录的计算机,例如通过从列表中选择,但这是一个不便之处并且受到用户错误的影响。
选项我已经消除:
- 主机头变量(没有可识别的发送)
- 饼干,支持用户选择的。这有点解决了用户错误的可能性,但不是真的。
- HTML5 DOM存储 - 不是由客户端浏览器
任何其他的想法支持?
编辑:我可以将这个特殊功能(创建一个打印工作)puttnig到胖客户端应用程序的选项。那么当然可以配置应用程序,问题就会消失。但用户体验将会因浏览器和Windows应用程序之间的切换而受到影响。
而且您不能设置响应类型和响应。将这些位写入()到客户端,以便它们可以打印到他们想要的任何打印机上?它的每种其他Web应用程序(无需专用打印服务器)如何实现它。 – StingyJack 2011-01-05 21:22:54
@SingyJack:编号 – cdonner 2011-01-05 21:41:56
已经发布了一些方法来创建客户端机器的“指纹”。网上有关于Canvas Fingerprinting的一些重要讨论 - 例如搜索“Client Fingerprinting”和“Canvas Fingerprinting”等。 – 2015-02-18 16:47:44