【发布时间】:2011-10-28 09:59:25
【问题描述】:
在 Google Channel API 的文档中它说:
“通道是一种单向通信路径,服务器通过它向由其客户端 ID 标识的特定 JavaScript 客户端发送更新。”
在他们的图表中,他们展示了一个客户端通过 POST 发送其状态。这似乎会很慢。客户端可以通过套接字与 Channel API 通信吗?还是必须通过 POST 发送?
【问题讨论】:
在 Google Channel API 的文档中它说:
“通道是一种单向通信路径,服务器通过它向由其客户端 ID 标识的特定 JavaScript 客户端发送更新。”
在他们的图表中,他们展示了一个客户端通过 POST 发送其状态。这似乎会很慢。客户端可以通过套接字与 Channel API 通信吗?还是必须通过 POST 发送?
【问题讨论】:
POST 是消息类型指示符和消息格式。
经过更多研究后进行重大修改!
看起来从浏览器到服务器的消息确实打开了新的 HTTP 级连接以发送 POST 消息。是否需要新的 TCP/IP 连接取决于浏览器对 TCP 连接的管理——新浏览器在这方面做得更好。见wikipedia HTTP persistent connection
Re: This seems like it would be slow. 通常浏览器流量是不对称的——大部分数据从服务器到浏览器。 Comet 将有助于该用例。
Re: Can the client communicate with the Channel API through a socket? 你是说IP socket吗?浏览器没有用于此的 api。你的意思是“web socket”?我有 98% 的把握将这两种技术结合起来是行不通的。不过你可以试试……
【讨论】: