带有C客户端服务器程序的Javascript服务器端事件

时间:2013-10-11 17:08:15

标签: javascript server-sent-events

我正在寻找通过Javascript Eventsource调用C对象(用于将文件从客户端复制到服务器)的可行性。

例如:

我有一个C-Client程序,可以执行如下:

  

./ client ip

执行上面的文件会 将文件从客户端计算机发送到在端口8888上运行的服务器。

服务器将在8888运行,将收到该文件,并将写入/ folder1 / receivedfile。

  

./ server ip

我需要在Javascript事件源中执行此操作。

Javascript代码示例:

  

如果(window.EventSource){
  var source = new EventSource(“c-object”);
  }其他{
  //结果到xhr轮询:( xhttprequest
  }

1 个答案:

答案 0 :(得分:0)

这是可行的。你的第二行是这样的:

var source = new EventSource("http://myserver.example.com:8888/c-object");

当然,您的服务器必须运行HTTP协议。如果沿着这条路线走下去,请注意在不同的上调用资源将需要所有CORS解决方法。在这种情况下,资源是c-object,而不同的来源是因为使用了不同的端口来提供HTML。

或者你可以使用Apache,并启动c-object作为cgi程序。然后它只需要在stdin / stdout上进行交互。

但是,退后一步,你确定它是EventSource你想要的吗?如果您只是尝试向服务器发送信号以告知它复制文件,而不是接收任何数据,那么请使用正常的AJAX请求。 SSE用于服务器单向连续地向客户端传输数据。初始连接完成后,SSE无法向服务器发送任何内容。