国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

vue 使用stompjs websocket連接rabbitmq

這篇具有很好參考價值的文章主要介紹了vue 使用stompjs websocket連接rabbitmq。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

1. 首先確保rabbitmq服務(wù)已開啟web-stomp

? ? ? ? 1.1 登錄rabbitmq web控制臺

? ? ? ? 1.2?在overview目錄下 下拉找到Ports and contexts 看列表有沒有http/web-stomp

? ? ? ? 1.3?如果沒有需要開啟 window/centos 進入rabbitmq安裝目錄的bin目錄下執(zhí)行rabbitmq-plugins enable rabbitmq_web_stomp rabbitmq_stomp rabbitmq_web_stomp_examples

? ? ? ? 1.4?如果是docker安裝需要先rm 容器,然后在啟動命令加15674端口 重新啟動容器

2.前端部分

? ? ? ? 2.1?引入stompjs, npm install stompjs --save

? ? ? ? 2.2?前端完整代碼

<template>
  <div class="page">
    <button @click="createConnection">連接MQTT

    </button>
    <button @click="doSubscribe">訂閱主題

    </button>
    <button @click="doUnSubscribe">取消主題

    </button>
    <button @click="destroyConnection">斷開MQTT

    </button>
  </div>
</template>

<script>
  import Stomp from 'stompjs'; // 引入stompjs 需要先npm install stompjs --save
  export default {
    data() {
      return {
        client: null,
        options: {
          vhost: '/', // rabbitmq的vhost
          incoming: 8000, // 心跳包時間,(須大于0,且小于10000,因為服務(wù)器可能默認10秒沒心跳就會斷開)
          outgoing: 8000, // 心跳包時間,(須大于0,且小于10000,因為服務(wù)器可能默認10秒沒心跳就會斷開)
          account: 'guest', // rabbitmq的賬戶
          pwd: 'guest', // rabbitmq的密碼
          server: 'ws://192.168.56.10:15674/ws' // ws://rabbitmq的ip:rabbitmq的web-stomp的端口/ws
        }
      }
    },

    methods: {
      connect(options) {
        this.options = { ...this.options, ...options }
        const mqUrl = this.options.server // 連接地址
        const ws = new WebSocket(mqUrl) // 創(chuàng)建
        ws.onclose = close => {
          console.log('webSocket關(guān)閉', close) // 關(guān)閉回調(diào)
        }
        ws.onerror = error => {
          console.log('webSocket異常', error) // 異?;卣{(diào)
        }
        ws.onopen = success => {
          console.log('webSocket連接成功', success) // 成功回調(diào)
        }
        this.client = Stomp.over(ws)
        this.client.heartbeat.incoming = this.options.incoming
        this.client.heartbeat.outgoing = this.options.outgoing

        //開始連接
        this.client.connect(
          this.options.account, // 用戶名
          this.options.pwd, // 密碼
          this.onSuccessConnectRabbitmq, // 連接成功時回調(diào)
          this.onErrorConnectRabbitmq, // 失敗時回調(diào)
          this.options.vhost
        );
      },
      onSuccessConnectRabbitmq() {
        console.log('stomp 連接成功!')
        // 直接在連接成功的時候就訂閱監(jiān)聽user.audit.queue隊列 user.audit.queue是rabbitmq里創(chuàng)建的queue名稱
        this.doSubscribe('user.audit.queue')
      },
      onErrorConnectRabbitmq(errorMsg) {
        console.error(`stomp 斷開連接,正在準備重新連接...`, errorMsg)
        this.connect(this.options)
      },
      doSubscribe(queueName) {
        this.currentSubscribe = this.client.subscribe(queueName, function (messages) {
          console.log('receive:', messages)
          console.log('message body', messages.body) // 消息內(nèi)容主體 json需要自己轉(zhuǎn)

        });
      },
      doUnSubscribe() {
        this.currentSubscribe.unsubscribe()
      },
      createConnection() {
        this.connect()
      },
      destroyConnection() {
        this.client.disconnect(() => {
          console.log('已關(guān)閉rabbitmq連接')
        });
      },
    },
    mounted() {
      this.connect()
    },
  };
</script>

3.?后端/rabbitmq操作

? ? ? ? 3.1?后端代碼操作 直接給隊列發(fā)消息前端doSubscribe即可收到消息

? ? ? ? ? ? ? ? 3.1.1 rabbitTemplate.convertAndSend(exchange routingkey, message);

? ? ? ? 3.2?rabbitmq web控制臺操作

? ? ? ? ? ? ? ? 3.2.1?創(chuàng)建exchange、queue, 將queue綁定到exchange, 在publish message直接發(fā)送消息驗證

????????

?文章來源地址http://www.zghlxwxcb.cn/news/detail-622622.html

到了這里,關(guān)于vue 使用stompjs websocket連接rabbitmq的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • vue3+nodejs(websocket)實現(xiàn)監(jiān)控拉rtsp流,使用flv.js+ffmpeg包(主要建立websocket是為了轉(zhuǎn)碼傳流)

    vue3+nodejs(websocket)實現(xiàn)監(jiān)控拉rtsp流,使用flv.js+ffmpeg包(主要建立websocket是為了轉(zhuǎn)碼傳流)

    關(guān)于拉取監(jiān)控攝像頭的流,我個人去查了很多資料,也是因為之前沒有接觸過這一模塊,加上目前公司也沒有后端去寫接口,所以我直接用node去寫websocket,與前端建立起通信,能夠進行后續(xù)轉(zhuǎn)碼、傳流,能夠?qū)崿F(xiàn)實時播放監(jiān)控畫面。 這里的rtsp流是要事先知道的,監(jiān)控的這個

    2024年02月20日
    瀏覽(26)
  • 使用js連接websocket報錯VM4143:11 Refused to connect to ‘‘ because it violates the following Content Securi

    在使用js連接websocket后發(fā)現(xiàn)始終報錯 控制臺錯誤輸出 在百度搜索無果后在一系列查略測試后發(fā)現(xiàn)在html頭中調(diào)整加入 connect-src ‘self’ ws:;

    2024年02月09日
    瀏覽(23)
  • WebSocket心跳機制/服務(wù)器端開連接(JS前端)

    情景: 前端使用 WebSocket 的時候,后端長時間沒有推送數(shù)據(jù),導(dǎo)致 WebSocket 連接經(jīng)常斷開,后端也會報錯。 解決方法: 通過 心跳機制 讓前端和后端始終保持連接。 代碼: 使用方法: 注意: 后端收到以后需要給前端返回數(shù)據(jù),否則還是無法保持連接 代碼參考了:https://bl

    2024年02月12日
    瀏覽(28)
  • vue 建立websocket連接

    vue 建立websocket連接

    需求:管理后臺需要服務(wù)器建立長連接,發(fā)送遠程手機端的截圖,以此實現(xiàn)遠程手機屏幕共享的功能 websocket.js 頁面 在vue 添加方法 ?后端 使用的java進行處理 實現(xiàn)的效果 ? ?點擊關(guān)閉按鈕時 斷開連接 ? ? ?

    2024年02月11日
    瀏覽(19)
  • 運維相關(guān)(一) - Vue項目配置WebSocket連接{ws、wss 連接方式}

    運維相關(guān)(一) - Vue項目配置WebSocket連接{ws、wss 連接方式}

    項目使用的是ruoyi的前后端分離框架 項目需要使用到 websocket , 在本地使用 ws 連接方式是沒問題 , 但是服務(wù)器上邊使用的是nginx + ssl 證書 https域名訪問的方式部署的 使用普通的 ws 連接是不可以成功的 需要使用 wss的方式 2.1 前端 vue.config.js 的代碼 這里target: 里邊指向的都是后

    2024年02月01日
    瀏覽(27)
  • 2023 ~【VUE+Xterm+Websocket】模擬SSH連接效果

    1、安裝包 xterm 、 xterm-addon-attach 、 xterm-addon-fit 安裝最新版本即可 2、在頁面中使用

    2024年02月07日
    瀏覽(18)
  • 在vue3項目中進行websocket的連接

    首先是安裝 我這邊是封裝了一個websocket的類 再進行使用

    2024年04月16日
    瀏覽(14)
  • Vue.js WebSocket 整合指南:實時通信的完美解決方案

    WebSocket是一種在Web應(yīng)用程序中實現(xiàn)雙向通信的通信協(xié)議,它允許客戶端和服務(wù)器之間建立持久的、低延遲的連接,以實現(xiàn)實時數(shù)據(jù)傳輸。相比傳統(tǒng)的HTTP請求,WebSocket更適合需要實時性和交互性的應(yīng)用程序。 WebSocket解決了傳統(tǒng)HTTP請求的一些限制,例如: 實時性: 傳統(tǒng)HTTP請求需

    2024年02月04日
    瀏覽(23)
  • uniapp(vue3)+node.js+websocket(實現(xiàn)實時通信效果)

    uniapp(vue3)+node.js+websocket(實現(xiàn)實時通信效果)

    文章目錄 概要 整體架構(gòu)流程 技術(shù)名詞解釋 技術(shù)細節(jié) 小結(jié) uniapp基于vue3,小程序的聊天功能 項目是基于node.js服務(wù)器搭建的簡易雙向通信網(wǎng)頁,實現(xiàn)了實時更新在線人數(shù)以及用戶間即時通訊的功能。 后臺接口代碼 1、首先我們可以通過Express 應(yīng)用程序生成器快速搭建一個后臺

    2024年03月26日
    瀏覽(30)
  • vue+flv.js+SpringBoot+websocket實現(xiàn)視頻監(jiān)控與回放

    vue+flv.js+SpringBoot+websocket實現(xiàn)視頻監(jiān)控與回放

    需求:vue+springboot的項目,需要在頁面展示出海康的硬盤錄像機連接的攝像頭的實時監(jiān)控畫面以及回放功能. 之前項目里是純前端實現(xiàn)視頻監(jiān)控和回放功能.但是有局限性.就是ip地址必須固定.新的需求里設(shè)備ip不固定.所以必須換一種思路. 通過設(shè)備的主動注冊,讓設(shè)備去主動連接服

    2024年02月02日
    瀏覽(26)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包