1

我在 Windows 机器上运行的 .Net 中编写了一个单击一次部署的应用程序。我需要从浏览器启动应用程序,以便我可以根据当前浏览器会话将信息传递给应用程序(HTTPHeader 包含需要传递给应用程序的单点登录 ID,以便它可以调用安全 Web服务)。

所以 click-once 应用程序作为 jsp 上的链接提供,所需的 id 作为链接中的查询字符串参数传递,click once 应用程序可以读取)。

现在我需要为 Mac 用户提供类似的功能。有什么不需要Java的方法吗?我想用Objective C编写,但是如何从浏览器触发应用程序的启动,传递必要的信息的问题仍然存在。

流程是:

  1. 用户点击我们网站的链接
  2. 用户被路由到单点登录身份验证表单
  3. 用户提交表单并被重定向到我们的网站(ID 嵌入在 HTTPHeader 中)
  4. 服务器构建页面,其中包含指向 Click Once 应用程序的链接,其中 id 作为查询字符串参数附加
  5. 用户单击链接,一旦部署的应用程序被下载并在用户计算机上以完全信任的方式执行(应用程序使用代码签名证书进行签名),请单击该链接。
  6. 应用程序在用户计算机上本地运行,并在服务器上调用 RESTful Web 服务,将单点登录 ID 作为 cookie 与允许请求通过的 Web 请求一起传递。

我将不胜感激任何可以为我指明正确道路的想法,因为我主要是一名 Windows 开发人员。

谢谢!

4

1 回答 1

1

我刚刚看到你对我关于这个主题的原始帖子的要求。

对此的需求一度被搁置一旁,但我们可能会追求的解决方案是拥有一个服务器端进程,可以即时修改交付的 Zip 或 DMG 文件。附加信息将被插入到应用程序的 Info.plist 文件中。这不会使加密签名无效,并且不需要下载任何其他内容。

于 2012-09-12T21:20:37.373 回答