我正在为网站创建一个协作编辑器,就像Google Docs一样,但它是为编码和开发而构建的。我想允许多个用户同时编辑文件,并将他们的更改推送到服务器和查看该文件的其他人。我怎么能这样做?
我无法弄清楚如何在用户之间同步数据。我现在的代码如下:
JS中的AJAX:
function update(f, txt){
$.ajax({
type: 'POST',
data: {text: txt, file: f},
url: "save.php",
});
}
save.php:
$file = $_POST['file'];
$contents = $_POST['text'];
file_put_contents(dirname(__FILE__) . "/preview" . "/" . $file,$contents);
答案 0 :(得分:1)
您可以使用EventSource
将数据从服务器流式传输到浏览器或WebSocket
以将数据流式传输到服务器和服务器。也就是说,每个客户端都会连续收到文件流,例如参见How to read and echo file size of uploaded file being written at server in real time without blocking at both server and client?。
plnkr提供实时共享选项,是开源的。考虑查找和阅读该应用程序的代码并调整您要实现的目标。