この記事は、WeChat アプレットでの Socket の使用例に関する関連情報を主に紹介します。この記事が、困っている方の参考になれば幸いです。
Socket を使用した WeChat アプレットの例
まず第一に、小さなプログラムは同時に 1 つの WebSocket 接続しか持つことができません。すでに WebSocket 接続がある場合、現在の接続は閉じられ、新しい接続が確立されます。確立される。
第二に、appID が使用される場合、プロトコルは wss://...
最近、チームは市場相場を作成するために小さなプログラムを使用し、ソケットに接続するときにブロードキャストが直接ブロードキャストされることが判明しました。サブスクライブせずに、ソケット接続を自動的に閉じました
時間が迫っていたので、socket-io (公式のソケット io ポータルではなく、小さなプログラムに基づいた WebSocket の模倣品) を引用しました。使用するには:
1. まず io js を utils フォルダーに貼り付けます
2、次に npm install wxapp-socket-io
3. 次のように、config フォルダーに新しいソケット.js を作成してソケット接続をカプセル化します。 :
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 、引用されるページ上で呼び出し、サブスクリプション メソッドをグローバルにカプセル化します
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)); } } } });
関連推奨事項:
HTML5 WebSocket ポイントツーポイント チャット実装メソッド
node.js ソケットを使用してチャットインスタンス共有の実装
以上がWeChat アプレットでの Socket の使用方法の詳細な例の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。