ホームページ > WeChat アプレット > ミニプログラム開発 > WeChat アプレットでの Socket の使用方法の詳細な例

WeChat アプレットでの Socket の使用方法の詳細な例

小云云
リリース: 2018-05-29 10:45:40
オリジナル
6097 人が閲覧しました

この記事は、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 ソケットを使用してチャットインスタンス共有の実装

ソケットプッシュ技術のphp実装の詳しい説明

以上がWeChat アプレットでの Socket の使用方法の詳細な例の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート