-2

我们有一个 Web 应用程序和一个 Windows 桌面应用程序,它们都通过 Web 套接字连接。

每当我们使用 Web 应用程序时,我们必须检查桌面应用程序是否已安装。如果桌面应用程序未安装(或)它是旧版本,我们需要相应地安装/更新它。

现在的挑战是,我们如何识别桌面应用程序是否已安装。

一种方法是将信息存储在浏览器缓存上。但是我们有以下问题:

  • 用户可以清除浏览器缓存。
  • 来自同一产品的多个 URL,如果我们使用,它会有不同的浏览器缓存。

目前,我们正在使用自定义 URI 方法来启动应用程序。(使用浏览器缓存)。

注意:我们主要针对 Chrome 和 Firefox。而且我们也没有管理员权限来安装桌面应用程序。

你们能帮我们找到正确的解决方案吗?

4

1 回答 1

0

每当您将安装程序提供给客户端时,都要让他们进行身份验证。

例如,要安装桌面应用程序,用户必须从某个地方获取它。假设您有一个应用下载网址:www.yourdesktopapp.com/download

现在,在该 URL 上,您可以首先要求用户登录(获取他的用户 ID),然后在向他们发送安装程序文件之前,您将保存

用户 id 与您发送 到数据库的文件的信息。

通过这种方式,您可以或多或少地了解谁安装了桌面应用程序、安装时间以及是否需要升级。

根据您的评论快速编辑:

好吧,我不知道应用程序是关于什么的,但也许你应该在允许下载之前要求用户登录......或者在应用程序本身中添加一个身份验证步骤,这样每当用户启动应用程序时,它会将应用程序版本 + 用户 ID 发送到您的服务器。

=== 或 ===

或者,您可以只为用户提供下载应用程序的选项,无论他们是否已经拥有它。如果他们有它,他们将忽略下载按钮,如果没有,他们可以下载。至于更新应用程序,留给应用程序本身。它不是应该更新您的应用程序的网站,但应用程序应该在启动时检查更新。

例如,您可以在您的应用程序中添加一个简单的查询,以检查可用的最新版本,并将其与当前版本进行比较。如果有更新的版本可用,要么在后台下载它,要么将用户浏览器导航到版本更新页面。

于 2017-08-11T15:07:53.280 回答