1:利用PUBNUB进行开发,PUBNUB提供的两个API
PUBNUB.publish({
// Set channel to 'my_channel'
channel : 'my_channel',
// Set message to a string
message : 'Hello World'
});
这个接口发送一个消息给’my_channel’频道,任何监听该频道的人都将接收到”Hello world”;对于不同文件生成的页面,只要channel是一致的,就可以进行通信;PUBNUB为每个用户(这里的用户指使用PUBNUB构建在线聊天室的开发人员)都有一个命名域,尽管不同用户对channel的命名是一致的,但不会接收到彼此的消息。
消息长度最大为1800字节
PUBNUB.subscribe({
// Listen onchannel 'my_channel'
channel : "my_channel",
// Set Callback Function when MessagesReceived
callback : function(message) {alert(message) }
});
监听my_channel信道,当接收到该信道的消息时,执行回调
网上源码: https://github.com/pubnub/javascript/blob/master/examples/mobile-chat/mobile-chat.html源码中有一些错误
1)<metaname=viewport content="width=device-width">
<metaname=viewport content="initial-scale=1.0">
<meta name=viewport content="user-scalable=no">
2)<divclass="ui-block-b"><button data-theme="a"id="chatSendButton"name="chatSendButton">Send</button>
利用PUBNUB构建在线聊天室的缺点:服务器需要接入网络,并且需要在PUBNUB上注册,获取自己的使用权限
2:基于NODEJS和NOWJS的开发(linux系统,网上有现成的代码,下面主要讲注意的地方)
1)先安装NODEJS和NPM,再利用NPM安装NOWJS插件,直接安装NOWJS不行,要先安装socket.io和node-proxy;
sudo npm install socket.io sudonpm install node-proxy sudonpm install now
2)NODEJS:一套用来编写高性能网络服务器的JAVASCRIPT工具包,通过运行.js文件启动一个网络服务器
3)NOWJS一个插件,主要依靠now对象编程
4)通过浏览器来访问在线聊天室,不是通过访问.html活.jsp文件等,而是通过IP和指定的端口来访问,比如在.js中创建的HTPP服务器监听的端口为4000,则本机应该通过如下形式访问:localhost:4000/
5)要在浏览器中通过NODEJS回显一个.html文件,可以利用require('fs').readFile('nowjschat.html', function(err, data){
response.writeHead(200, {'Content-Type':'text/html'});
response.write(data);
response.end();
将其在页面中显示
另外,若要在该.html文件中添加本地的.js或者.css文件,则将src或者http地址连接到本地服务器的IP地址,如:
http://192.168.110.216/jquery.mobile-1.3.0/jquery.mobile-1.3.0.min.css;192.168.110.216是本地服务器的IP地址;此处不能使用相对路径
若是使用网上的.js或者.css文件,则直接将src或者http地址链接到该地址即可