手机端与网页通讯,使用websocket完成二者之间的联通。


websocket选用socket.io类实现。


服务器端,使用nodejs,代码依赖了express和socket.io。

首先建立一个http服务器


var app = require('express')();

var server = require('http').Server(app);

var socketio = require('./v1/socketio');

var db = require("./db/db.js");


server.listen(80);


app.get('/', function (req, res) {

res.sendFile(__dirname + '/index.html');

});


然后用这个服务器创建websoket服务


var io = socketio(http);


var socketarr = [];


io.on('connection', function (socket) {

console.log('a user connected');


});


联通成功后,通过socket.io 提供的 on 和emit方法,就可以组织客户端的通信了。


移动端集成socket.io即可,ios和android的demo如下:

ios:https://github.com/socketio/socket.io-client-swift

android: https://github.com/socketio/socket.io-client-java


网页里想要集成socket.io,从socket.io主页下载js文件。

socket.io主页: https://socket.io/


在网页中嵌入

<script type="text/javascript" src="/src/socket.io.min.js" charset="UTF-8"></script>


使用以下代码就可以连接websocket服务器

var socket = io('ws://socket.liboapp.cn');

通过socket的on和emit方法与移动端通讯。