Heim >WeChat-Applet >Mini-Programmentwicklung >Detailliertes Beispiel für die Verwendung von Socket im WeChat-Applet
Dieser Artikel stellt Ihnen hauptsächlich relevante Informationen über die Verwendung von Socket im WeChat-Applet vor. Ich hoffe, dass dieser Artikel Ihnen helfen kann.
Beispiel für ein WeChat-Miniprogramm mit Socket
Erstens kann ein Miniprogramm nur eine WebSocket-Verbindung gleichzeitig haben, sofern bereits eine vorhanden ist Wenn Sie eine WebSocket-Verbindung herstellen, wird die aktuelle Verbindung geschlossen und die Verbindung erneut hergestellt.
Zweitens, wenn appID verwendet wird, muss das Protokoll wss:// sein...
Kürzlich verwendete das Team ein kleines Programm, um bei der Verbindung mit dem Socket Marktnotierungen zu erstellen Es wurde festgestellt, dass kein Abonnement durchgeführt wurde, die Übertragung wurde direkt durchgeführt und die Socket-Verbindung wurde automatisch geschlossen.
Die Zeit war knapp und ich kratzte mir am Kopf, also zitierte ich socket-io (. eine Websocket-Imitation basierend auf einem kleinen Programm, socket-io, das kein offizieller Socket ist) -io, Portal), Verwendungsmethode:
1 Fügen Sie zuerst ein io js in den Utils-Ordner ein
2. Dann npm install wxapp-socket-io
3. Erstellen Sie eine neue socket.js im Konfigurationsordner und kapseln Sie die Socket-Verbindung wie folgt:
const io = require('../utils/io.js') let url = 'wss://......' let wsStatus = false let onSocket = null export const connect = function(cb){ if(!onSocket){ onSocket = io(url) onSocket.on('connect', function (res) { cb(true,onSocket) wsStatus = true }) setTimeout(function(){ if(!wsStatus){ cb(false,onSocket) } },10000) }else{ cb(true,onSocket) } }
4. Rufen Sie die globale Kapselungsabonnementmethode auf der Seite auf, auf die verwiesen werden soll
let openSocket = require('../../config/socket') let app = getApp() let socket = null Page({ data: { zl: [[422, 400, 468, 834, 785, 446, 845, 517, 630, 797, 890, 529, 553, 425, 469, 470, 837, 841, 521, 525], [422, 400, 468, 834, 785, 446, 845, 517, 630, 797, 890, 529, 553, 425, 469, 470, 837, 841, 521, 525]] }, onLoad: function () { let that = this; //socket调用 openSocket.connect(function (status, ws) { if (status) { socket = ws this.subscribe('zl')//对封装好对订阅方法进行调用 socket.on('broadcast', function (msg) {//广播 console.log("broadcast"); console.log(msg); }) } else { alert("socket 连接失败") } }); }, subscribe: function (type) { if (socket) { let eis = this.data[type] if (eis && eis.length > 0) { let param = {//仅供参考,根据接口自行更改 eis: eis.join(',') } socket.emit('subscribe', JSON.stringify(param)); } } } });
Verwandte Empfehlungen:
HTML5 WebSocket Punkt-zu-Punkt-Chat-Implementierungsmethode
node.js verwendet Socket, um die gemeinsame Nutzung von Chat-Instanzen zu implementieren
Detaillierte Erläuterung der Socket-Push-Technologie in PHP
Das obige ist der detaillierte Inhalt vonDetailliertes Beispiel für die Verwendung von Socket im WeChat-Applet. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!