【问题标题】:How to communicate between d server and javascriptd server和javascript之间如何通信
【发布时间】:2014-05-10 16:57:50
【问题描述】:

我是套接字编程的新手。我从http://www.dsource.org/projects/mango 学习了芒果。 如果我将客户端和服务器构建为 D 应用程序,它看起来像是一个很好的客户端/服务器通信。但是如果客户端是一个带有 javascript 的浏览器呢?

如何从我的 D 服务器接收结构?我能找到任何资源或示例吗? 我发现的大多数东西都是 socket.io 或其他类似的东西。

谢谢。

【问题讨论】:

  • socket.io w/ Express 是您进行任何实时客户端通信的最佳选择。

标签: javascript sockets d


【解决方案1】:

您最好将vibe.d 用于您的网络服务器。 vibe.d 是目前最流行的 D web 服务器库,很大程度上是因为它的完整性和效率。

对于 D 和 JavaScript 之间的通信,您可能希望使用来自浏览器的异步请求,这些请求在任何给定时间从客户端浏览器执行,然后服务器响应。 JSON 将是您与之通信数据的好格式,并且 vibe.d 提供了一些用于创建 JSON 数据和使用 JSON 数据的 HTTP 响应的功能。 jQuery 有 some functions 可以轻松地使用 JavaScript 和 JSON 创建异步请求。

总结一下。

  1. 编写一个请求处理函数(如果您使用该库,请使用 vibe.d),它返回一些 JSON 数据,可能接受一些请求数据。 (查询字符串或 POST 数据。)
  2. 编写一些 JavaScript 代码,向网络服务器发出请求,并对响应做一些有意义的事情。

此外,如果您希望将更新从 Web 服务器推送到客户端应用程序,vibe.d 还提供一些 WebSocket 功能,用于套接字连接。

【讨论】:

  • Vibe.d 在其服务器端确实非常强大,但它的 http 客户端(javascript)却相当薄弱。我的浏览器需要监听服务器,它似乎无法做到这一点。
  • 对于浏览器侦听服务器事件,有三种通用技术:使用 ajax、WebSockets 或服务器端 DOM 事件进行长轮询,如果您从未做过,我会快速搜索关于它们一般如何工作的教程,然后将其应用于 D。
  • 亚当,将其作为答案,因为恕我直言,这是问题的答案。 :)
猜你喜欢
  • 2013-02-14
  • 2014-02-16
  • 2012-11-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-12-12
相关资源
最近更新 更多