【问题标题】:Send information from the WCF to JavaScript将信息从 WCF 发送到 JavaScript
【发布时间】:2013-07-01 12:43:17
【问题描述】:

JavaScript调用WCF服务,使用-AJAX:Calling WCF Services using jQuery

我的问题是:

有没有办法在一个请求之后保留与JavaScript相关的东西,

然后从WCF发送信息没有接收来自JS的请求?

(如果有关于该主题的一些简洁信息,我很乐意收到。)

【问题讨论】:

  • 您希望 WCF 继续向您发送消息而不接收请求吗?如果这是您的意思,那么您应该尝试使用w3.org/TR/2009/WD-websockets-20091029
  • @EhsanUllah。是的,这是我的意图。
  • 你读过我提到的链接吗?因为那是您的方案中的解决方案
  • @EhsanUllah。我看了,但是在 Wcf 中使用 WebSocket 只在 .NET 4.5 中启用,我用的是 4,还有其他方法吗?
  • @HodayaShalom:了解您使用的 Web 浏览器和版本可能很重要。只有 Web 浏览器实现了 WebSocket(参见 here),WebSocket 才可能是您的选择。 ASP.NET SignalR 可能是另一种选择,但使用哪种操作系统也很重要。比如你电脑上安装了IE10也不能在Windows 7上使用SignalR的WebSocket。

标签: javascript ajax html wcf service


【解决方案1】:

SignalR 是个好办法,

您可以在以下问题中详细了解这一点:

Use SignalR to notify from wcf to JS

【讨论】:

  • 您应该只了解 SignalR 在最旧的 Web 浏览器上从客户端作为服务器的永久池工作。即使在一般支持 WebSocket 的 IE10 的情况下,SignalR 也只能在 Windows 8 上使用 WebSocket 而不能在 Windows 7 上使用。我建议您使用FiddlerFirebug 或 IE/Chrome 的开发者工具来跟踪 HTTP 流量。所以 SignalR 对于新客户端来说是一个很好的设计解决方案,但对于 Windows 7 客户端来说它不是真正的解决方案。
  • 什么“有效”?将使用 Long Pooling 还是 WebSockets?您检查过 HTTP 流量吗?你能看到像http://localhost:port/signalr?transport=longPolling&connectionToken=... 这样的HTTP GET 请求每秒从客户端发送到服务器吗?
猜你喜欢
  • 2012-03-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-04-05
  • 2012-09-06
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多