我正在寻求从我的服务器到我的iPhone应用程序建立某种套接字/ COMET类型功能.基本上,每当用户设法在服务器上设置任意对象'脏'时,例如,更新他们的地址......反馈应该从服务器推送到任何保持对服务器进行实时轮询的客户端.我想这是一个流行词,就是COMET.我知道网页浏览器应用程序有DWR,所以我想,也许最好在我的每个控制器中设置一个隐藏的UIWebView,这样我就可以从他们的javascript框架中开箱即用COMET了?有更优雅的方法吗?
我正在寻找一个简单可靠的Comet javascript库.我想保持从我的服务器(通过PHP脚本)到客户端的持久数据流.我尝试使用iframe技术构建自己的,但我遇到的safari有很多问题.我只是希望别人为它创建一个简单的库?
经过大量搜索和谷歌搜索后,我回到了井边.我有Django 1.4,我正在寻找一个体面的工作示例来弄清楚让Django与gevent一起工作.我喜欢Django框架,但我需要它来处理长轮询.我已经有一个使用gevent的工作服务器,它可以处理长轮询请求,也可以通过http以大约10帧/秒的速度进行图像流传输.我想使用Django中的所有好东西为这部分提供框架.
有很多例子,但不幸的是,这些都没有开箱即用!有一个工作的例子可以帮助理解这两件事如何协同工作.
这是我到目前为止发现的问题和问题:
http://codysoyland.com/2011/feb/6/evented-django-part-one-socketio-and-gevent/ 问题:ImportError:无法导入设置'webchat.settings'(是否在sys.path上?) :没有名为webchat.settings的模块
https://github.com/codysoyland/django-socketio-example/blob/master/README.rst 问题:安装失败,获得gevent权限问题尝试手动从git hub获取它.该示例运行,但在浏览器连接时会生成这些错误.
这些是提供信息但不提供基本答案. 需要帮助了解Python中的Comet(使用Django) https://bitbucket.org/denis/gevent/src/tip/examples/webchat/chat/views.py http://blog.gevent.org/2009/10/10 /简单的长轮询与-的Django和GEVENT /
我希望有人可以解释(请,非常请....)是这样的:我有一个使用Django 1.4创建的基本网站 - 这里的教程https://docs.djangoproject.com/en/1.4/intro/tutorial01/很棒.所以现在我需要了解要使用gevent进行哪些更改以及能够处理异步事件.我确信这并不困难 - 我只需要一个了解它的人来解释做什么以及发生了什么(有关像monkey_patch这样的事情).
谢谢.
我们希望将数据从服务器推送到客户端,但只能使用HTTP(端口80).消息传递的最佳解决方案是什么?一个想法是Comet.是否有其他想法或框架可以提供JMS over HTTP.(是的,ActiveMQ也支持它,但是哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇.
我正在实现一个需要实时更新的系统.我一直在寻找某些场景,其中就是彗星.实现这一点,我认为这与传统的长轮询不同.
在这两种情况下,您都必须发送请求,然后服务器发回响应.在浏览器中解释响应,然后开始新请求.
那么为什么我要使用彗星,如果在这两种情况下我都需要打开和关闭连接.
免责声明
我正在考虑实施Google Plus,Facebook,StackOverflow风格的通知系统.我不是一个没有经验的开发人员,最终我会想到这一点,但我只是想向正确的方向发展.
我想要的是浏览我的网站的用户在收到新消息时在浏览会话期间收到通知.
目前,我的所有消息都存储在一个表中.
| id | messageSubject | messageBody | hasRead | readDate | sentDate | sentToUser | sentFromUser |
| 1 | HelloWorld | Nada | 0 | `null` | `null | 1 | 10 |
Run Code Online (Sandbox Code Playgroud)
现在,我的所有消息都是从几十个不同的来源中检索出来的.
我想要的是有一种方法能够在收到新消息时通知用户.我很高兴以任何方式重构我的代码,这使我可以在收到插入消息时通知我的node.js,如果这是我需要做的.
但我不太确定从哪里开始.
我的问题是我的所有消息都通过几十种不同的来源输入到mysql中,我的Insert陈述涉及很多方面.所以我只是不知道最好的方法.
谢谢.
或者服务器发送事件和WebSocket取代Comet技术?
这很复杂,不一定是一个问题.我很感激任何可能的帮助.
我已经读过可以在没有服务器访问的情况下使用websockets,但我似乎无法找到任何显示它是如何的示例.基于以下两点,我得出了这个结论(我认为我需要这个):
在过去的几个小时里,我一直在努力想弄清楚如何让websockets与我在我的机器上使用的WAMP服务器一起工作,我有root权限.安装了作曲家,但无法弄清楚如何安装composer.phar文件来安装棘轮.尝试过其他PHP websocket实现(希望它是在PHP中),但仍然无法让它们工作.
我用来测试的当前webhost是免费主机,不允许SSH访问.因此,即使我能够找到具有root访问权限的websockets,但在涉及主机时也是如此.
我也通过谷歌搜索找到了免费的VPS主机(当然,限制所有内容)但是具有完全的root访问权限,但我更喜欢保留允许更多带宽的东西(我的免费主机目前是无限制的).我已经读过你可以(而且应该)将websocket服务器托管在与HTTP服务器不同的子域上,并且它甚至可以完全在不同的域上运行.
它最终可能会更便宜地托管我自己的网站,当然没有真正的线索,但在这种情况下,我需要弄清楚如何让我的机器上的websockets工作.
所以,如果有人能够理解我在问什么,这里有几个问题,是否可以使用没有root访问权限的websockets,如果有的话,怎么做?当我无法弄清楚composer.phar文件时,我如何正确安装棘轮websockets(我的composer.json中有棘轮代码,但不确定它是否在正确的目录中),这个问题是如果第一个问题不是真的可能.那么是否有可能在VPS上安装websocket服务器并将HTTP服务器放在一个完全不同的域上,如果有的话,是否有任何关于它的文档呢?
我的意思是,当然,有一个选项可以使用AJAX并强制浏览器在每个时间段重新加载JS文件,这将使用jQuery ajax来更新一系列div,无论是否有任何更改,但这可能会变得复杂,我甚至不确定这是否可能(我不明白为什么不会这样),但是我再次更喜欢使用websockets,因为我听说他们的资源非常少于某些段落会.
收到此错误消息:
Refused to set unsafe header "Origin"
使用此代码:
function getResponse() {
document.getElementById("_receivedMsgLabel").innerHTML += "getResponse() called.<br/>";
if (receiveReq.readyState == 4 || receiveReq.readyState == 0) {
receiveReq.open("GET", "http://L45723:1802", true, "server", "server123"); //must use L45723:1802 at work.
receiveReq.onreadystatechange = handleReceiveMessage;
receiveReq.setRequestHeader("Origin", "http://localhost/");
receiveReq.setRequestHeader("Access-Control-Request-Origin", "http://localhost");
receiveReq.timeout = 0;
var currentDate = new Date();
var sendMessage = JSON.stringify({
SendTimestamp: currentDate,
Message: "Message 1",
Browser: navigator.appName
});
receiveReq.send(sendMessage);
}
}
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?标题中我缺少什么使这个CORS请求有效?
我尝试删除了receiveReq.setRequestHeader("Origin", ...)通话,但谷歌Chrome在我的receiveReq.open()通话中抛出了访问错误...
为什么?