javascript – 节点在服务器和客户端之间共享数据
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了javascript – 节点在服务器和客户端之间共享数据,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1894字,纯文字阅读大概需要3分钟。
内容图文
![javascript – 节点在服务器和客户端之间共享数据](/upload/InfoBanner/zyjiaocheng/796/3eee35f25ea243d3b5efd3a54dc7caa1.jpg)
有没有办法使用node& socketIo / express以某种方式将对象变量绑定到客户端,因此它的行为就像反应性流星一样,并且像流星一样保持同步?
换句话说,例如我在node.js脚本中有一个JSON对象变量:
var marksObject = {
firstValue : 'this is the first value' ,
secondValue : 'this is the second value'
};
我正在寻找一种简单的方法让marksObject似乎在客户端和节点服务器中同步.因此,如果客户端或节点服务器上发生更改,则更改似乎在两个位置都发生.
理想情况下,这只涉及几行代码,我不必编写任何东西来手动保持客户端和节点服务器同步.
Redis看起来非常有趣,但对我正在尝试的东西来说似乎有些过分.
非常感谢你.
解决方法:
看起来deepstream.io对我们来说只需要很少的努力就能做到这一点.
深流服务器:
var DeepstreamServer = require('deepstream.io');
var server = new DeepstreamServer();
server.set('host', '192.168.123.123');
server.set ('port', 6020 );
server.set ('tcpPort', 6021 );
// this is the default, but its a nice reminder
server.start();
节点“客户端”(在服务器上运行但行为与客户端类似):
var deepstream = require('deepstream.io-client-js');
ds = deepstream( '192.168.123.123:6021' ).login();
// port has to match tcpPort or just use 6021
record = ds.record.getRecord( 'clientRecord' );
record.set('clientField', 'test from the node client running on the server! ');
record.subscribe ('clientField' , function (value) {
console.log('subscribed value: ' + value)
});
浏览器“客户端”将在一个或多个浏览器中运行
<script type='text/javascript' src='deepstream.min.js'></script>
<script type='text/javascript'>
ds = deepstream( '192.168.123.123:6020' ).login();
record = ds.record.getRecord( 'clientRecord' );
record.set ('clientField', 'test test from a browser!');
record.subscribe ('clientField' , function (value) {
console.log('subscribed value: ' + value)
});
// for fun, enter record.get('clientField'); in the console too
// and also enter record.set('clientField', 'this is what i entered in the console!');
</script>
内容总结
以上是互联网集市为您收集整理的javascript – 节点在服务器和客户端之间共享数据全部内容,希望文章能够帮你解决javascript – 节点在服务器和客户端之间共享数据所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。