Maison interface Web js tutoriel Comment implémenter une salle de discussion à l'aide de socket.io

Comment implémenter une salle de discussion à l'aide de socket.io

Jun 14, 2018 am 11:27 AM
socket.io 聊天室

Cet article présente principalement l'utilisation de socket.io pour implémenter un cas de salle de discussion simple, qui a une certaine valeur de référence. Les amis intéressés peuvent s'y référer

L'exemple dans cet article partage l'implémentation de socket.io. avec tout le monde. Le code spécifique du salon de discussion simple est pour votre référence. Le contenu spécifique est le suivant

1 Code client :

<body>
  <h3>socket简例</h3>
  <hr>
  <p id = &#39;app&#39;>
    <p>
      <p>
        <ul>
          <li v-for = &#39;item in msgs&#39;>
            {{item.name}}说:{{item.content}}
          </li>
        </ul>
      </p>
      <p>
        <p><input type="text" v-model = &#39;msg&#39;><button @click = &#39;m_send()&#39;>发送</button></p>
      </p>
    </p>
  </p>

  <script type="text/javascript" src = &#39;https://cdn.bootcss.com/vue/2.5.9/vue.min.js&#39;></script>
  <script type="text/javascript" src = &#39;https://cdn.bootcss.com/socket.io/1.7.3/socket.io.min.js&#39;></script>
  <script type="text/javascript">

    var _vm = new Vue({
      data : {
        name : &#39;用户&#39;,
        msg : &#39;&#39;,
        msgs : [],
      },
      methods : {
        m_send : function() {

          // 向客户端发送消息
          socket_client.emit(&#39;say_client&#39;, {
            name : this.name,
            content : this.msg
          }) ;
          this.msg = &#39;&#39; ;
        }
      }
    }).$mount(&#39;#app&#39;) ;


    // socket服务器
    var socket_client = io.connect(&#39;http://127.0.0.1:3000&#39;) ; 

    /**
     * 监听服务端发来的消息
     *
     * 1、“say_server”是客户端发出信息时的key值
     * 2、“res”是客户端传来的value值
     */ 
    socket_client.on(&#39;say_server&#39; ,function(res){

      console.log(&#39;服务端发来的消息为:&#39;, res) ;

      _vm.msgs.push(res);
    });

  </script>
</body>
Copier après la connexion

2. [app.js] code :

const http = require(&#39;http&#39;) ;
const server = http.createServer() ;

// web服务器
const express = require(&#39;express&#39;) ;
const app = express();

app.use(express.static(__dirname + &#39;/public&#39;));

app.listen(8888, function () {
  console.log(&#39;web服务器成功启动了,IP:127.0.0.1,端口号:8888&#39;) ;
});


// socket服务器

const socketio = require(&#39;socket.io&#39;) ;
const socket_server = socketio(server) ;

// 建立和客户端的socket连接
socket_server.on(&#39;connection&#39;, function(client) {

// console.log(client) ;          // 查看连接进来的客户端对象内容  
// console.log(Object.keys(client)) ;    // 查看连接进来的客户端对象的关键key值

  /**
   * 监听客户端发来的消息
   *
   * 1、“say_client”是客户端发出信息时的key值
   * 2、“res”是客户端传来的value值
   */ 
  client.on(&#39;say_client&#39;, function(res) {
    console.log(&#39;客户端发来的消息为:&#39;, res) ;

    // 向客户端发送消息
    socket_server.emit(&#39;say_server&#39;, res) ;
  }) ;
}) ;


server.listen(3000, function() {
  console.log(&#39;socket服务器成功启动了,IP:127.0.0.1,端口号:3000&#39;) ;  
}) ;
Copier après la connexion

Ce qui précède est ce que j'ai compilé pour vous. J'espère que cela vous sera utile à l'avenir.

Articles connexes :

Comment Webpack doit-il gérer les styles ?

Comment générer des images de mots en js

Quelles sont les méthodes de référence pour les bibliothèques en jQuery

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment implémenter une fonction de salle de discussion simple en utilisant MySQL et Java Comment implémenter une fonction de salle de discussion simple en utilisant MySQL et Java Sep 21, 2023 pm 05:13 PM

Comment utiliser MySQL et Java pour implémenter une fonction de chat simple Introduction : Avec la prédominance des médias sociaux aujourd'hui, les gens comptent de plus en plus sur le chat en ligne pour communiquer et partager des informations. Comment implémenter une fonction simple de salon de discussion en utilisant MySQL et Java est un projet très intéressant et pratique. Cet article expliquera comment utiliser MySQL et Java pour implémenter cette fonction et fournira des exemples de code spécifiques. 1. Construire une base de données Tout d'abord, nous devons créer une base de données dans MySQL pour stocker les informations relatives aux salles de discussion.

Comment développer une salle de discussion Websocket en utilisant le langage Go Comment développer une salle de discussion Websocket en utilisant le langage Go Dec 14, 2023 pm 01:46 PM

Comment utiliser le langage Go pour développer une salle de discussion Websocket Websocket est un protocole de communication en temps réel qui permet une communication bidirectionnelle entre le serveur et le client en établissant une connexion. Websocket est un très bon choix lors du développement de salles de discussion car il permet l'échange de messages en temps réel et offre des performances efficaces. Cet article expliquera comment développer une salle de discussion Websocket simple à l'aide du langage Go et fournira quelques exemples de code spécifiques. 1. Préparation 1. Installer Go

Créez une salle de discussion en temps réel basée sur JavaScript Créez une salle de discussion en temps réel basée sur JavaScript Aug 10, 2023 pm 11:18 PM

Construire un salon de discussion en temps réel basé sur JavaScript Avec le développement rapide d'Internet, les gens accordent de plus en plus d'attention à la messagerie instantanée et à l'expérience interactive en temps réel. En tant qu’outil de messagerie instantanée courant, les forums de discussion en temps réel sont très importants tant pour les particuliers que pour les entreprises. Cet article explique comment créer une salle de discussion simple en temps réel à l'aide de JavaScript et fournit des exemples de code correspondants. Nous avons d’abord besoin d’une page frontale comme interface utilisateur du salon de discussion. Voici un exemple de structure HTML simple : &lt;!DOCTYPE

Guide de développement de salon de discussion ThinkPHP6 : implémentation de fonctions de communication en temps réel Guide de développement de salon de discussion ThinkPHP6 : implémentation de fonctions de communication en temps réel Aug 12, 2023 pm 02:31 PM

Guide de développement de salon de discussion ThinkPHP6 : implémentation de la fonction de communication en temps réel Introduction : Avec le développement rapide d'Internet, la demande de communication en temps réel augmente également. En tant que méthode courante de communication en temps réel, les forums de discussion ont reçu une attention et une utilisation généralisées. Cet article vous fournira une méthode simple et rapide pour implémenter des fonctions de communication en temps réel en utilisant le framework ThinkPHP6. 1. Configuration de l'environnement : Avant de commencer, nous devons configurer l'environnement de développement. Assurez-vous que les frameworks PHP et ThinkPHP6 sont installés. En même temps, cet article fera

Développer la fonction de salle de discussion en utilisant php et Websocket Développer la fonction de salle de discussion en utilisant php et Websocket Dec 02, 2023 am 11:08 AM

Utiliser PHP et Websocket pour développer les fonctions des salons de discussion Introduction : Avec le développement rapide d'Internet, les salons de discussion sont devenus l'un des moyens importants permettant aux gens de communiquer et de socialiser dans la vie quotidienne. L'utilisation de la technologie PHP et Websocket pour développer une fonction de salle de discussion peut permettre une communication bidirectionnelle en temps réel et offrir aux utilisateurs une expérience de discussion plus fluide et plus pratique. Cet article explique comment utiliser PHP et Websocket pour implémenter une salle de discussion simple et fournit des exemples de code spécifiques. 1. Préparation : Avant de commencer le développement, nous devons nous assurer

Comment résoudre le piège du service proxy nginx socket.io Comment résoudre le piège du service proxy nginx socket.io May 13, 2023 pm 12:43 PM

nginx proxy deux serveurs socket.io. Le mode de fonctionnement de socket.io consiste à interroger et à mettre à niveau vers websocket. Lors de la demande de services via nginx, un grand nombre d'erreurs 400 apparaissent. Parfois, il peut être mis à niveau vers websocket, et parfois il continue de signaler des erreurs. Mais lors de l'accès direct via ip+port, le succès est à 100 %. L'analyse de sidsid est la clé de notre problème. Lors de la création initiale d'une connexion (le mode d'interrogation simule une longue connexion), le client lancera une telle requête : https://***/?eio=3&transport=polling&t=154082071

Swoole en action : créez rapidement un salon de discussion basé sur WebSocket Swoole en action : créez rapidement un salon de discussion basé sur WebSocket Jun 14, 2023 pm 04:20 PM

À l’ère d’Internet, les forums de discussion sont devenus un lieu important de communication et de socialisation. L'émergence de la technologie WebSocket a rendu la communication en temps réel plus fluide et plus stable. Aujourd'hui, nous présentons comment utiliser le framework Swoole pour créer rapidement une salle de discussion basée sur WebSocket. Swoole est un framework de communication réseau coroutine PHP haute performance, écrit en langage C, intégrant des E/S asynchrones, une coroutine, une communication réseau et d'autres fonctions, créant du code PHP comme Node.js.

L'intégration PHP et WebSocket réalise le développement d'un salon de discussion en temps réel L'intégration PHP et WebSocket réalise le développement d'un salon de discussion en temps réel Jun 25, 2023 pm 01:13 PM

Dans le monde du développement Web, les fonctionnalités de chat en direct sont devenues de plus en plus populaires. Il aide les utilisateurs à interagir facilement en temps réel et à améliorer la communication et la compréhension. Afin de mettre en œuvre le chat en temps réel, nous devons utiliser le protocole WebSocket et avoir besoin d'un langage de programmation capable de gérer les requêtes WebSocket. Dans cet article, nous présenterons comment mettre en œuvre le développement de salles de discussion en temps réel à l'aide de l'intégration PHP et WebSocket. WebSocket est un protocole de communication full-duplex qui permet une communication en temps réel entre un navigateur et un serveur.

See all articles