最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

websocket實(shí)現(xiàn)Vue?3和Node.js之間的實(shí)時(shí)消息推送

 更新時(shí)間:2024年06月01日 09:35:19   作者:牛掰666  
使用?WebSocket?實(shí)現(xiàn)實(shí)時(shí)消息推送是一種高效的方式,可以在客戶端和服務(wù)器之間建立長連接,實(shí)現(xiàn)低延遲的雙向通信,以下是一個(gè)簡單的示例,展示如何在前端使用?Vue?3?和后端使用?Node.js?搭建一個(gè)?WebSocket?實(shí)現(xiàn)實(shí)時(shí)消息推送的應(yīng)用

使用 WebSocket 實(shí)現(xiàn)實(shí)時(shí)消息推送是一種高效的方式,可以在客戶端和服務(wù)器之間建立長連接,實(shí)現(xiàn)低延遲的雙向通信。以下是一個(gè)簡單的示例,展示如何在前端使用 Vue 3 和后端使用 Node.js 搭建一個(gè) WebSocket 實(shí)現(xiàn)實(shí)時(shí)消息推送的應(yīng)用。

前端(Vue 3)

1. 創(chuàng)建 Vue 項(xiàng)目

首先,創(chuàng)建一個(gè)新的 Vue 3 項(xiàng)目。如果你還沒有安裝 Vue CLI,可以通過以下命令安裝:

npm install -g @vue/cli

創(chuàng)建一個(gè)新的 Vue 項(xiàng)目:

vue create websocket-demo
cd websocket-demo

2. 安裝 WebSocket 客戶端庫

在 Vue 項(xiàng)目中,可以使用原生 WebSocket API,也可以使用第三方庫。這里我們使用原生 WebSocket API。

3. 實(shí)現(xiàn) WebSocket 客戶端

在 src 目錄下的 App.vue 文件中,添加以下代碼:

<template>
  <div id="app">
    <h1>WebSocket Demo</h1>
    <input v-model="message" @keyup.enter="sendMessage" placeholder="Type a message" />
    <button @click="sendMessage">Send</button>
    <ul>
      <li v-for="(msg, index) in messages" :key="index">{{ msg }}</li>
    </ul>
  </div>
</template>

<script>
export default {
  data() {
    return {
      ws: null,
      message: '',
      messages: []
    };
  },
  mounted() {
    this.connectWebSocket();
  },
  methods: {
    connectWebSocket() {
      this.ws = new WebSocket('ws://localhost:3000');
      this.ws.onmessage = (event) => {
        this.messages.push(event.data);
      };
      this.ws.onopen = () => {
        console.log('Connected to WebSocket server');
      };
      this.ws.onclose = () => {
        console.log('Disconnected from WebSocket server');
      };
    },
    sendMessage() {
      if (this.message !== '') {
        this.ws.send(this.message);
        this.message = '';
      }
    }
  }
};
</script>

<style>
#app {
  font-family: Avenir, Helvetica, Arial, sans-serif;
  text-align: center;
  margin-top: 60px;
}
</style>

后端(Node.js)

1. 創(chuàng)建 Node.js 項(xiàng)目

創(chuàng)建一個(gè)新的目錄并初始化一個(gè) Node.js 項(xiàng)目:

mkdir websocket-server
cd websocket-server
npm init -y

2. 安裝 WebSocket 庫

安裝 ws 庫,這是一個(gè)簡單且強(qiáng)大的 WebSocket 庫:

npm install ws

3. 實(shí)現(xiàn) WebSocket 服務(wù)器

在項(xiàng)目根目錄下創(chuàng)建一個(gè) server.js 文件,添加以下代碼:

const WebSocket = require('ws');
const wss = new WebSocket.Server({ port: 3000 });
wss.on('connection', (ws) => {
  console.log('Client connected');
  ws.on('message', (message) => {
    console.log(`Received message: ${message}`);
    // Broadcast the message to all clients
    wss.clients.forEach((client) => {
      if (client.readyState === WebSocket.OPEN) {
        client.send(message);
      }
    });
  });
  ws.on('close', () => {
    console.log('Client disconnected');
  });
});
console.log('WebSocket server is running on ws://localhost:3000');

運(yùn)行項(xiàng)目

1. 啟動(dòng) WebSocket 服務(wù)器

在 websocket-server 目錄下,運(yùn)行以下命令啟動(dòng) WebSocket 服務(wù)器:

node server.js

2. 啟動(dòng) Vue 項(xiàng)目

在 websocket-demo 目錄下,運(yùn)行以下命令啟動(dòng) Vue 項(xiàng)目:

npm run serve

結(jié)果

打開瀏覽器,訪問 http://localhost:8080,你應(yīng)該會(huì)看到一個(gè)簡單的 WebSocket 演示應(yīng)用。你可以在輸入框中輸入消息并發(fā)送,消息會(huì)通過 WebSocket 服務(wù)器廣播給所有連接的客戶端,實(shí)時(shí)更新消息列表。

通過這種方式,你可以實(shí)現(xiàn)一個(gè)簡單的實(shí)時(shí)消息推送系統(tǒng)。當(dāng)然,這只是一個(gè)基本的示例,實(shí)際應(yīng)用中你可能需要處理更多的邏輯和安全問題。

到此這篇關(guān)于websocket實(shí)現(xiàn)Vue 3和Node.js之間的實(shí)時(shí)消息推送的文章就介紹到這了,更多相關(guān)Vue 3和Node.js的消息推送內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 使用nodejs、Python寫的一個(gè)簡易HTTP靜態(tài)文件服務(wù)器

    使用nodejs、Python寫的一個(gè)簡易HTTP靜態(tài)文件服務(wù)器

    這篇文章主要介紹了使用nodejs、Python寫的一個(gè)簡易HTTP靜態(tài)文件服務(wù)器,分為nodejs和Python兩個(gè)版本,用類似淘寶的CSS、JS文件加載方式處理靜態(tài)文件加載,需要的朋友可以參考下
    2014-07-07
  • Nodejs 獲取時(shí)間加手機(jī)標(biāo)識(shí)的32位標(biāo)識(shí)實(shí)現(xiàn)代碼

    Nodejs 獲取時(shí)間加手機(jī)標(biāo)識(shí)的32位標(biāo)識(shí)實(shí)現(xiàn)代碼

    本文給大家分享nodejs獲取時(shí)間加手機(jī)標(biāo)識(shí)的32位標(biāo)識(shí)實(shí)現(xiàn)代碼,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友參考下
    2017-03-03
  • 你或許不知道的一些npm實(shí)用技巧

    你或許不知道的一些npm實(shí)用技巧

    這篇文章主要給大家介紹了一些你或許不知道的npm實(shí)用技巧,分享一些 npm 包管理工具的實(shí)用小竅門,希望能夠略微提高下前端、Node.js 開發(fā)者的生活質(zhì)量,需要的朋友可以參考下
    2019-07-07
  • NodeJS鏈接MySql數(shù)據(jù)庫的操作方法

    NodeJS鏈接MySql數(shù)據(jù)庫的操作方法

    下面小編就為大家?guī)硪黄狽odeJS鏈接MySql數(shù)據(jù)庫的操現(xiàn)方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-06-06
  • nodeJs項(xiàng)目在阿里云的簡單部署

    nodeJs項(xiàng)目在阿里云的簡單部署

    這篇文章主要為大家詳細(xì)介紹了nodeJs項(xiàng)目在阿里云的簡單部署,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-11-11
  • npm install常見錯(cuò)誤類型及對(duì)應(yīng)的解決方案

    npm install常見錯(cuò)誤類型及對(duì)應(yīng)的解決方案

    在前端開發(fā)中,npm是最常用的包管理工具,通過 npm install 命令,開發(fā)者可以輕松地安裝項(xiàng)目所需的依賴包,然而,在實(shí)際使用過程中,npm install 可能會(huì)因?yàn)楦鞣N原因而報(bào)錯(cuò),本文將詳細(xì)介紹一些常見的 npm install 錯(cuò)誤類型、發(fā)生原因及其對(duì)應(yīng)的解決方案,需要的朋友可以參考下
    2025-03-03
  • Thinkjs3新手入門之添加一個(gè)新的頁面

    Thinkjs3新手入門之添加一個(gè)新的頁面

    Thinkjs 是一個(gè)快速、簡單的基于MVC和面向?qū)ο蟮妮p量級(jí)Node.js開發(fā)框架,下面這篇文章主要給大家介紹了關(guān)于Thinkjs3新手入門之添加一個(gè)新的頁面的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下。
    2017-12-12
  • 輕松開發(fā) Streamable HTTP MCP Server

    輕松開發(fā) Streamable HTTP MCP Server

    本文介紹了MCP協(xié)議中stdio和SSE協(xié)議的優(yōu)缺點(diǎn),以及MCP的最新協(xié)議StreamableHTTP的特性,韓老師還分享了如何使用YeomanGeneratorforMCPServer快速開發(fā)一個(gè)支持StreamableHTTP的MCPServer,并在VSCode中進(jìn)行調(diào)試
    2025-05-05
  • Windows下Node爬蟲神器Puppeteer安裝記

    Windows下Node爬蟲神器Puppeteer安裝記

    這篇文章主要介紹了Windows下Node爬蟲神器Puppeteer安裝記,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2019-01-01
  • Node.js(v16.13.2版本)安裝及環(huán)境配置的圖文教程

    Node.js(v16.13.2版本)安裝及環(huán)境配置的圖文教程

    本文主要介紹了Node.js(v16.13.2版本)安裝及環(huán)境配置的圖文教程,文中通過圖文介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-05-05

最新評(píng)論

铁岭市| 嘉定区| 宁津县| 武平县| 理塘县| 娄烦县| 诸城市| 新蔡县| 抚远县| 明水县| 北票市| 洛扎县| 迁西县| 旬阳县| 阜宁县| 安达市| 镇原县| 高雄县| 门头沟区| 松原市| 曲松县| 新干县| 崇仁县| 牡丹江市| 杂多县| 青海省| 喀什市| 天水市| 永川市| 盘锦市| 孟村| 南丹县| 保靖县| 稷山县| 洞头县| 临夏县| 永福县| 五原县| 宝丰县| 乌兰县| 平和县|