0

WebSocketの実装方法について読んでいます。今のところ、セットアップが簡単なので、fancywebsocketsの実装を検討しています。私の質問は、一般的なWebSocketを理解することに重点を置いているので、これについていくつか分類したいと思います。

  1. WS(データを受信するIEクライアント)から送信されるデータを制御できますか?

  2. たとえば、プライベートメッセージのシナリオで、メッセージをデータベースに保存する場合、どのように対処しますか。DBにテキストを保存し、画面にメッセージを表示する場合、WSは、そのページを閲覧している他の人にその変更をどのように適用しますか。(WSは、そのページで発生したすべての変更をリッスンしますか?)明確な例は、同じ壁を閲覧している2人の人が壁の所有者の更新を見るFacebookにありますか?

  3. 少し無関係ですが、奇妙な質問です。WebSocketがデータのリアルタイム更新を提供する場合、なぜ誰もGoogleWaveサービスのフォークバージョンを作成していないのですか。すべてのブラウザに明確な実装があるわけではないからですか?

ありがとう。

4

1 に答える 1

0

約1。本当に私はこの質問を理解していません、Websockets接続はTCP接続と同じです、あなたはそれを送り返す前に受信日を変更することができます。Bristleback Serverの簡単な例(サーバーは編集されたユーザーステータスのプレビューを取得し、不正な単語が含まれているかどうかを確認してから、ステータスの完全なプレビューがユーザーに返送されます。

@ActionClass
public class ClientNotificationUpdateAction {

  @Action
  public UserStatus previewEditedStatus(FacebookUser user, UserStatus status) {
    removeBadWords(status);
    return status;
  }
}

約2.WebSocketサーバーには接続されているすべてのユーザーに関する情報があるため、接続されているすべてのユーザーにメッセージを簡単に送信したり、さらにフィルターをかけてこの通知を親しい友人にのみ送信したりできます。そして、ここにもう少しコードがあります(クライアントは自分のステータスを更新し、このステータスはすべての友達に返送されます)。

@ActionClass
public class ClientNotificationUpdateAction {

  @ObjectSender
  private ConditionObjectSender conditionObjectSender;

  @Action
  public void updateStatus(FacebookUser user, UserStatus status) throws Exception {
    SendCondition sendToFriendsOfUser = new FiendsOfUserCondition(user);

    BristleMessage message = ActionMessageFactory
      .createMessage("ClientNotificationUpdate", "updateStatus", status);
    conditionObjectSender.sendMessage(message, sendToFriendsOfUser);
  }
}

約3。すべてのインターネットブラウザがWebSocketプロトコルを実装しているわけではないことは事実です(特にモバイルデバイスで)

于 2012-10-18T10:39:09.303 に答える