欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

      1. node.js 用socket實現(xiàn)聊天的示例代碼

         更新時間:2017年10月17日 10:45:23   作者:哈希  
        本篇文章主要介紹了node.js 用socket實現(xiàn)聊天的示例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

        本文介紹了node.js 用socket實現(xiàn)聊天的示例代碼,分享給大家,也給自己留個筆記,具體如下:

        服務(wù)器搭建

        app.js

        const http = require("http");
        const express = require("./express");
        
        //創(chuàng)建一個服務(wù)
        const server = http.createServer(express);
        
        //監(jiān)聽服務(wù)端口
        server.listen(8001,()=>{
          console.log("服務(wù)端已經(jīng)啟動,請訪問 http://localhost:8001");
        }); 
        

        express.js

        const url=require("url");
        const fs=require("fs");
        
        function express(req,res){
          var urlObj=url.parse(req.url);
          //console.log(urlObj);
        
          var filePath="./www"+urlObj.pathname;
          var content="not found";
          if(fs.existsSync(filePath)){
            content=fs.readFileSync(filePath);
          }
          
          res.end(content.toString());
        }
        
        
        module.exports=express; 
        

        index.html

        <!DOCTYPE html>
        <html lang="en">
          <head>
           <meta charset="utf-8"/>
            <title>Socket.IO chat</title>
            <style>
             * { margin: 0; padding: 0; box-sizing: border-box; }
             body { font: 13px Helvetica, Arial; }
             form { background: #000; padding: 3px; position: fixed; bottom: 0; width: 100%; }
             form input { border: 0; padding: 10px; width: 90%; margin-right: .5%; }
             form button { width: 9%; background: rgb(130, 224, 255); border: none; padding: 10px; }
             #messages { list-style-type: none; margin: 0; padding: 0; }
             #messages li { padding: 5px 10px; }
             #messages li:nth-child(odd) { background: #eee; }
            </style>
           </head>
           <body>
            <ul id="messages"></ul>
            <form action="">
             <input id="m" autocomplete="off" /><button>Send</button>
            </form>
        
            <script src="js/lib/jquery-1.11.1.js"></script>
            <script src="js/lib/socket.io.js"></script> 
            <script src="js/index.js"></script>
           </body>
        </html> 
        
        

        客戶端服務(wù)搭建與服務(wù)端通信

        我們要建立服務(wù)端socket請求連接

        io.on('connection', function(socket){
          console.log('a user connected');
        
          //斷開連接
          socket.on('disconnect', function(){
            console.log('user disconnected');
          });
        }); 
        

        index.js

        //客戶端建立連接 
        var socket = io(); 
        客戶端向服務(wù)端發(fā)送請求
        index.js
        
        $('form').submit(function(){
          //觸發(fā)事件
          socket.emit('chat message', $('#m').val());
          $('#m').val('');
          return false;
         });  
        
        

        app.js

        //接收客戶端的信息
        socket.on('chat message', function(msg){
          console.log('message: ' + msg);
        }); 
        

        將服務(wù)端的數(shù)據(jù)廣播到客戶端去

        socket.on('chat message', function(msg){
            console.log('message: ' + msg);
        
            socket.broadcast.emit("clientE",msg);
          }); 
        
        

        客戶端接收服務(wù)端廣播出來的數(shù)據(jù)

        socket.on('clientE', function(msg){
          $('#messages').append($('<li>').text(msg));
        }); 
        

        以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

        相關(guān)文章

        • node.js操作mongodb簡單示例分享

          node.js操作mongodb簡單示例分享

          MongoDB是基于Javascript語言的數(shù)據(jù)庫,存儲格式是JSON,而Node也是基于JavaScript的環(huán)境(庫),所以node和mongoDB的搭配能減少因為數(shù)據(jù)轉(zhuǎn)換帶來的時間空間開銷。今天我們來看看如何通過node.js來操作MongoliaDB
          2017-05-05
        • node.js 利用流實現(xiàn)讀寫同步,邊讀邊寫的方法

          node.js 利用流實現(xiàn)讀寫同步,邊讀邊寫的方法

          下面小編就為大家?guī)硪黄猲ode.js 利用流實現(xiàn)讀寫同步,邊讀邊寫的方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
          2017-09-09
        • NodeJs版本過高無法啟動Vue項目報錯的幾種解決方法

          NodeJs版本過高無法啟動Vue項目報錯的幾種解決方法

          在開發(fā)vue項目時,我們通常使用nodejs作為項目的運行環(huán)境,但是有時候,由于nodejs版本過高,可能會導(dǎo)致vue項目啟動報錯,這篇文章主要給大家介紹了關(guān)于NodeJs版本過高無法啟動Vue項目報錯的幾種解決方法,需要的朋友可以參考下
          2023-12-12
        • 詳解nodeJS中讀寫文件方法的區(qū)別

          詳解nodeJS中讀寫文件方法的區(qū)別

          本篇文章主要介紹了詳解nodeJS中讀寫文件方法的區(qū)別,nodejs的fs模塊針對讀操作為我們提供了readFile,read, createReadStream三個方法,有興趣的可以了解一下。
          2017-03-03
        • 深入學(xué)習(xí)nodejs中的async模塊的使用方法

          深入學(xué)習(xí)nodejs中的async模塊的使用方法

          本篇文章主要介紹了nodejs中的async模塊的使用方法,具有一定的參考價值,有興趣的可以了解一下
          2017-07-07
        • Node.js和Express簡單入門介紹

          Node.js和Express簡單入門介紹

          本篇文章主要介紹了Node.js和Express簡單入門介紹,詳細介紹如何用Node.js和Express搭建一個web服務(wù)器,有興趣的可以了解一下。
          2017-03-03
        • 詳解Nodejs 通過 fs.createWriteStream 保存文件

          詳解Nodejs 通過 fs.createWriteStream 保存文件

          本篇文章主要介紹了Nodejs 通過 fs.createWriteStream 保存文件,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
          2017-10-10
        • Nodejs 數(shù)組的隊列以及forEach的應(yīng)用詳解

          Nodejs 數(shù)組的隊列以及forEach的應(yīng)用詳解

          這篇文章主要介紹了Nodejs 數(shù)組的隊列以及forEach的應(yīng)用詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
          2021-02-02
        • node 命令方式啟動修改端口的方法

          node 命令方式啟動修改端口的方法

          今天小編就為大家分享一篇node 命令方式啟動修改端口的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
          2018-05-05
        • node.js使用mongoose操作數(shù)據(jù)庫實現(xiàn)購物車的增、刪、改、查功能示例

          node.js使用mongoose操作數(shù)據(jù)庫實現(xiàn)購物車的增、刪、改、查功能示例

          這篇文章主要介紹了node.js使用mongoose操作數(shù)據(jù)庫實現(xiàn)購物車的增、刪、改、查功能,結(jié)合實例形式詳細分析了node.js使用mongoose框架操作MongoDB數(shù)據(jù)實現(xiàn)購物車增刪改查相關(guān)技巧與使用注意事項,需要的朋友可以參考下
          2019-12-12

        最新評論