标签: comet

如何使用C建立HTTP连接?

如何使用 C 建立 HTTP 连接?有任何参考资料或示例代码吗?此外,如何实现从用 C 编写的客户端打开 Comet 连接?(任何有关打开 HTTPS 连接的其他信息也将不胜感激。)谢谢!

c comet http

5
推荐指数
1
解决办法
7176
查看次数

带有分块请求正文的 XmlHttpRequest?

我知道如何使用 XmlHttpRequest 对象在 javascript 中处理分块下载。有没有办法使用 javascript 执行分块上传,打开连接但只一点一点上传数据块?

我知道 Http 1.1 服务器应该可以进行分块上传,并且发现了很多使用各种其他平台(C# java 等)进行分块上传的参考,但没有找到任何在浏览器中使用 javascript 进行分块上传的参考。

编辑:用例是将数据流式传输到服务器,而不是上传大文件,有点镜像使用分块响应将数据流式传输到客户端。这是发出单独 ajax 请求的替代方案,因为从客户端到服务器的数据块非常频繁(< 0.5 秒间隔)。

javascript ajax jquery comet

5
推荐指数
1
解决办法
2471
查看次数

SSE 服务器发送事件 - 客户端不断发送请求(如轮询)

为什么每个站点都解释说,在 SSE 中,客户端和服务器之间的单个连接保持打开状态“使用 SSE,客户端发送标准 HTTP 请求,请求事件流,服务器最初使用标准 HTTP 响应进行响应,并保持连接打开”

然后,当服务器决定它可以向客户端发送数据时,当我尝试实现 SSE 时,我会看到每隔几秒发送一次的 fiddler 请求

对我来说,感觉就像长时间轮询,没有一个连接保持打开状态。

而且,并不是服务器决定向客户端发送数据就发送,而是只有当客户端发送下一个请求时才发送数据

如果我用“重试:10000”响应,即使服务器现在想要通知的事情发生了,也只会在下一个请求(从现在起 10 秒后)到达客户端,这对我来说并不真正看起来像连接保持打开状态,服务器会在需要时立即发送数据

小提琴手SS

comet server-sent-events server

5
推荐指数
1
解决办法
2355
查看次数

如何使所有连接的浏览器重新加载由服务器端事件启动

假设有一个包含动态生成内容的网页 - 比如包含当前已连接浏览器数量的div.当计数在服务器上发生变化时,我希望所有连接的浏览器重新加载计数,以便每个人都能看到增量/减量.

实现这一目标的最佳方法是什么?

关键字:ajax,广播,浏览器,div,jquery

ajax push comet server-push push-notification

4
推荐指数
2
解决办法
2957
查看次数

使用ASP.NET反转Ajax(Comet)

我正在寻找一个如何使用ASP.NET实现反向Ajax(Comet)的基本示例.我已经查看了以下内容,我现在不想使用它们(因为它们已付款)

http://www.frozenmountain.com/websync/ http://www.lightstreamer.com/demos.htm

我已经在SO上提到了各种链接.但他们中的大多数都指向外部API.我正在寻找一个如何实现它的明确示例.

asp.net ajax jquery comet reverse-ajax

4
推荐指数
1
解决办法
5257
查看次数

PHP Comet.怎么做得更好?

我有一个简单的彗星聊天.JavaScript使用长轮询发送ajax请求.当服务器在数据库中查找新消息时,它会回答并提供JSON.接下来,JavaScript再次发送请求.

使用Javascript:

function cometConnect(){
$.ajax({
      cache:false,
      type:"get",
      data:'ts='+ts,
      url: urlBack,
      async: true,
      success: function (arr1) {
      //work with JSON
      //.....
      },
      complete:function(){
        cometConnect(true);
        nerr=false;
      },
      dataType: "text"
    }); 
}
Run Code Online (Sandbox Code Playgroud)

PHP

$flag=true;
$lastmodif = isset($_GET['ts']) ? $_GET['ts'] : 0;
while($flag){
  $q=mysql_query("SELECT text, posterId,modified, fromUserId,toUserId, login FROM commonMessage WHERE modified>$lastmodif");

      while($r=mysql_fetch_row($q)){
        $flag=false;
        //Prepare JSON... variable $resp
            //.........
      }

  usleep(5000); 
}
echo $resp;
Run Code Online (Sandbox Code Playgroud)

问题是:这个"while($ flag)"可以执行很长时间(如果没有人发布消息).因此,Apache可以抛出exeptions(最长执行时间,有时502 Bad Gateway或Gateway Timeout).

怎么解决?

使用.htaccess和"php_value max_execution_time 0"?

或者简单地从JavaScript发送新请求,当服务器返回错误时(它会使消息更慢)?

可能是,还有其他一些方法吗?

javascript php jquery chat comet

4
推荐指数
1
解决办法
1266
查看次数

Comet协议和Django - 我知道一些选项,但我似乎无法使它们工作

我对使用Django制作实时网络应用非常感兴趣.不幸的是,我在设置方面遇到了一些问题.我正在考虑的一些选择:

Orbited:似乎是Django的选择.不幸的是,他们的域名似乎已经过期,并且几乎所有我需要的文档才能使其正常运行.我已经按照http://mischneider.net/?p=125上的教程进行了操作,但是我遇到了一个神秘的错误(请参阅记录器"stomp.py"找不到处理程序).

流星:我不得不说,他们的网站给我留下了深刻的印象.不幸的是,我正在运行Windows,似乎缺乏关于Windows的任何文档.所以我迷路了.

Cometd:类似的问题:只是不明白安装.

龙卷风:需要pycurl,这反过来需要卷曲.继续抛出CURL_DIR然后libcurl.lib的问题.经过数小时的修补,有效地挫败了我的双手.

请帮忙.在这一点上我非常愿意考虑,好吧,任何事情.好吧,至少如果它记录在一起,我可以弄清楚如何安装它并与Django一起使用它.

任何帮助赞赏.

python django comet

4
推荐指数
1
解决办法
1024
查看次数

实时轮询背后的技术

我现在正在查看facebook新闻提要/自动收报机,我想知道当我的任何连接进行更新时,它使用什么技术/架构来异步提取数据.我能想到的一种可能性是setInterval在函数上使用javascript 来积极地轮询服务器以获取新数据.

我想知道它有多高效.

我能想到的另一种可能的技术是Comet/NodeJS架构,它可以在服务器上有更新时ping客户端.我对这项技术不太熟悉.

如果我想创建类似于此的东西.我该怎么办?第一种方法是首选方法吗?哪些技术可以让我这样做?

javascript ruby-on-rails comet real-time node.js

4
推荐指数
1
解决办法
882
查看次数

使用jQuery和PHP实现长轮询

我想建立一个基于JavaScript(jQuery将用于AJAX)和PHP的聊天.

我听说这样做的好方法是使用长轮询.

我理解这个想法,但我不知道如何在服务器端实现它.

无限循环听起来像个坏主意.

php jquery chat comet long-polling

4
推荐指数
1
解决办法
2308
查看次数

为什么Comet需要分块编码响应?

我读了一些关于Comet tech的文章.他们都提到长期HTTP响应应该是Transfer-Encoding:chunked.我想知道为什么它应该被分块编码.如果响应没有分块编码,客户端javascript仍然可以读取并解析响应的文本,对吗?

是否有任何特殊原因可以对Comet响应进行分块编码?

comet http chunked-encoding

3
推荐指数
1
解决办法
1268
查看次数