手機端與網頁通訊,使用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方法與移動端通訊。