【问题标题】:Best Practices for Exchanging data between Desktop and Web Application在桌面和 Web 应用程序之间交换数据的最佳实践
【发布时间】:2015-12-19 21:33:41
【问题描述】:

我必须将信息从桌面应用程序传递到 Web 应用程序,反之亦然。

经常使用的最佳做法是什么?

目前我正在使用 Asp.Net 和 Winforms。

将数据传递给网站即时创建 (POST) WebRequest 并将 xml 发布到网站。
使用来自 Asp.net 的 .Net Remoting 将数据传递给应用程序 im
(我使用的 Winforms 是一个管理和监控应用程序。)

编辑:让我们将其视为通用网络应用程序和 winforms。

目前,Web 应用程序和 Winforms 都在同一台机器上。(但可以更改)。

【问题讨论】:

  • 已将远程处理部分更改为 WCF。

标签: c# asp.net winforms


【解决方案1】:

Web 服务或 Windows Communication Foundation (WCF) 将是您实现远程互操作性的最佳选择。

在您的网站上,公开一些服务端点并从您的桌面应用程序中使用它们。然后根据需要发送消息。

【讨论】:

    【解决方案2】:

    我会仔细研究系统的设计,并考虑是否有必要使用 Winforms 应用程序进行监控和管理。不,真的:创建丰富的 Web 站点非常简单(如果需要,可以使用 AJAX 等技术),并且生成的应用程序的体系结构会简单得多。

    当然,部署非常简单。

    【讨论】:

    • 另外:请记住,现在不推荐使用远程处理,而是支持 WCF。
    【解决方案3】:

    我不确定您要完成的工作是否有最佳实践。但是,在允许发布到您的 Web 应用程序时,您可能需要考虑一些安全问题。潜在的攻击者很容易操纵发布数据并将其发送到您的 Web 应用程序。您应该考虑使用 Web 服务或 Windows Communication Foundation。

    【讨论】:

    • Web 服务仍然会发布/获取可能被窃听/篡改的远程源。如果您需要保护,请通过 HTTPS 等安全通道发送。
    • 呃...一个 Web 服务 /is/ 一个 Web 应用程序!看看(比如说)REST,它使用 HTTP POST 将数据获取到应用程序中。虽然有一些安全问题需要担心,但 /any/ 两个应用程序之间是一样的,无论是否是 Web。
    【解决方案4】:

    注册一个自定义处理程序,例如 Real player 如何注册 rstp:// 或网页浏览器注册 http://

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-02-11
      • 2011-02-18
      • 1970-01-01
      • 2016-01-22
      相关资源
      最近更新 更多