4

GoInstant でアプリを開発していますが、キーとチャネルの違いがよくわかりません。キーとチャネルはいつ使用する必要がありますか?

4

1 に答える 1

7

Keys : Key-Value ストアと同様に、Key オブジェクトは、GoInstant で値を管理および監視するためのインターフェイスです。それらを CRUD (作成、読み取り、更新、削除) に使用する必要があります。

主な例:

// We create a new key using our room object
var movieName = yourRoom.key(‘movieName’);

// Prepare a handler for our `on` set event
function setHandler(value) {
    console.log(‘Movie has a new value’, value);
}

// Now when the value of our key is set, our handler will fire
movieName.on(‘set’, setHandler);

// Ready, `set`, GoInstant :)
movieName.set('World War Z', function(err) {
    if (!err) alert('Movie set successfully!')
}

Channels : 全二重メッセージング インターフェイスを表します。マルチクライアント pub/sub システムを想像してみてください。チャネルはデータを保存しません。チャネルからメッセージを取得することはできません。メッセージを受信することしかできません。セッションを共有するクライアント間でイベントを伝播するために使用する必要があります。

チャネルの例:

var mousePosChannel = yourRoom.channel('mousePosChannel');

// When the mouse moves, broadcast the mouse co-ordinates in our channel
$(window).on('mousemove', function(event) {
  mousePosChannel.message({
    posX: event.pageX,
    posY: event.pageY
  });
});

// Every client in this session can listen for changes to
// any users mouse location
mousePosChannel.on('message', function(msg) {
  console.log('A user in this room has moved there mouse too', msg.posX, msg.posY);
})

公式ドキュメントは次の場所にあります。

キー: https://developers.goinstant.net/v1/key/index.html

チャネル: https://developers.goinstant.net/v1/channel/index.html

于 2013-07-16T14:03:53.343 に答える