亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > JavaScript > 正文

vue發送websocket請求和http post請求的實例代碼

2019-11-19 11:11:44
字體:
來源:轉載
供稿:網友

先給大家介紹下vue發送websocket請求和http post請求

直接上代碼:

pdf.vue

<script>  import SockJS from 'sockjs-client';  import Stomp from 'stompjs';  import qs from "qs"  export default {    name: "pdf",    data() {      return {        newsData: [],        tagGuid_mx: "",        tagGuid_4AA_Ia: "",        tagGuid_4AA_P: "",        tagGuid_4AA_Q: "", 49         tagGuid_1AA_6_Ib: "",        tagGuid_1AA_6_Ic: "",        tagGuid_pdfwd: "",        tagGuid_pdfsd: "",        stompClient: '',        timer: '',        visibilityHeZha: "hidden",        visibilityFenZha: "hidden",        hezhaData:[]      }    },    methods: {      initWebSocket() {        this.connection();        let that = this;        // 斷開重連機制,嘗試發送消息,捕獲異常發生時重連        this.timer = setInterval(() => {          try {            that.stompClient.send("test");          } catch(err) {            console.log("斷線了: " + err);            that.connection();          }        }, 5000);      },      connection() {        // 建立連接對象        let socket = new SockJS('http://XXX.XX.XX.XXX:8081/energy-system-websocket');        // 獲取STOMP子協議的客戶端對象        this.stompClient = Stomp.over(socket);        // 定義客戶端的認證信息,按需求配置        let headers = {          access_token: "92c31bd5-ae43-4f25-9aad-c4eb1a92d61d"          //          Authorization: ''        }        // 向服務器發起websocket連接        this.stompClient.connect(headers, () => {          this.stompClient.subscribe('/user/topic/data', (msg) => { // 訂閱服務端提供的某個topic              console.log('廣播成功')              //            console.log(msg); // msg.body存放的是服務端發送給我們的信息              console.log(msg.body);              this.newsData = JSON.parse(msg.body);            }, headers),            this.stompClient.subscribe('/user/topic/alarm', (msg) => { // 訂閱服務端提供的某個topic              console.log('廣播告警成功')              //console.log(msg); // msg.body存放的是服務端發送給我們的信息              console.log(msg.body);              this.newsData = JSON.parse(msg.body);            }, headers);          this.stompClient.subscribe('/user/topic/cmd_ack', (msg) => { // 訂閱服務端提供的某個topic            console.log('下控指令應答成功')            //console.log(msg); // msg.body存放的是服務端發送給我們的信息            console.log(msg.body);            this.newsData = JSON.parse(msg.body);          }, headers);          this.stompClient.subscribe('/user/topic/response', (msg) => { //指令的應答(僅表示服務端接收成功或者失?。?           console.log('SEND指令的應答成功')            //console.log(msg); // msg.body存放的是服務端發送給我們的信息            console.log(msg.body);            this.newsData = JSON.parse(msg.body);            this.newsData = this.newsData.data;            console.log(this.newsData);            for(var i = 0; i < this.newsData.length; i++) {               //母線uab              if(this.newsData[i].tagGuid == "a3a95bf3-fef8-454e-9175-19a466e40c3d") {                      this.tagGuid_mx = this.newsData[i].value != '' ? this.newsData[i].value.toFixed(2) : ""              }              //電容柜4AA_Ia              if(this.newsData[i].tagGuid == "4cf6e256-6c3a-4853-a087-dfd263916dab") {                      this.tagGuid_4AA_Ia = this.newsData[i].value               }              //電容柜4AA_P              if(this.newsData[i].tagGuid == "52e8265a-0a20-4e3b-a670-14a8df373bf7") {                      this.tagGuid_4AA_P = this.newsData[i].value               }              //電容柜4AA_Q              if(this.newsData[i].tagGuid == "ef369a17-0bbd-4295-8ac7-816c23fcb065") {                      this.tagGuid_4AA_Q = this.newsData[i].value != '' ? this.newsData[i].value.toFixed(2) : 0               }276               //配電房溫度              if(this.newsData[i].tagGuid == "ead49446-07f9-43b7-a4ce-cd974d53728e") {                      this.tagGuid_pdfwd = this.newsData[i].value               }              //配電房濕度              if(this.newsData[i].tagGuid == "baaf1733-124e-46fd-9d58-c069b747317a") {                      this.tagGuid_pdfsd = this.newsData[i].value               }            }          }, headers);          this.stompClient.send("/app/monitor/subTagGuid", // # 訂閱需要監控的測點ID            headers,            JSON.stringify({              "stationCode": "00013",              "tagGuids": [                "a3a95bf3-fef8-454e-9175-19a466e40c3d", //                "4cf6e256-6c3a-4853-a087-dfd263916dab", //                "52e8265a-0a20-4e3b-a670-14a8df373bf7", //                "ef369a17-0bbd-4295-8ac7-816c23fcb065", //334                 "baaf1733-124e-46fd-9d58-c069b747317a"              ]            })          ) //用戶加入接口        }, (err) => {          // 連接發生錯誤時的處理函數          console.log('失敗')          console.log(err);        });      }, //連接 后臺      disconnect() {        if(this.stompClient) {          this.stompClient.disconnect();        }      }, // 斷開連接      changeColor(evt) {        this.rect.setAttributeNS(null, "fill", "blue")      },      shl3aa4() {        this.visibilityHeZha = this.visibilityHeZha == "visibility" ? "hidden" : "visibility";        this.visibilityFenZha = this.visibilityFenZha == "visibility" ? "hidden" : "visibility";      },      shl3aa42() {        setTimeout(() => {          this.visibilityHeZha = "hidden";          this.visibilityFenZha = "hidden";        }, 1200)      },      hezha() {        //3#樓3AA-4_合閘        this.$axios.post("/energy-system/auth/monitor/ykcmd", {            checkUser: "admin",            checkPass: "123456",            stationCode:"00013",            tagGuid: "89d1d312-17be-4d20-8471-baa08ba734e0",            value: 1          })          .then(res => {            this.hezhaData=JSON.parse(res.config.data)            if(this.hezhaData.tagGuid=="89d1d312-17be-4d20-8471-baa08ba734e0" && this.hezhaData.value==1){              alert("合閘成功!");            }else{              alert("合閘失??!請聯系管理員");            }379           })          .catch(error => {            console.log(error)          })      },      fenzha() {        alert("分閘"); //3#樓3AA-4_分閘      }    },    mounted() {      this.initWebSocket();    },    beforeDestroy: function() { // 頁面離開時斷開連接,清除定時器      this.disconnect();      clearInterval(this.timer);    },    created() {    }  }</script>

在main.js設置全局http地址:

Axios.defaults.baseURL = 'http://XXX.XXX.XX.XXX:9001';Axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded';

在main.js中設置header中token值:

// 添加請求攔截器Axios.interceptors.request.use(function(config) {  config.headers.access_token = "add7c097-f12b-40fe-8e48-6fe1f2120fa5";  //  config.headers.Authorization = localStorage.token; //將token設置成請求頭  console.log("請求============" + config);  // 在發送請求之前做些什么  return config;}, function(error) {  // 對請求錯誤做些什么  return Promise.reject(error);});

數據刷起來!

ps:下面給大家介紹下vue websocket 請求

首先寫一個公共方法

socket.js

function getSocket(url, params, callback) {  let socket;  if (typeof (WebSocket) === 'undefined') {    console.log('您的瀏覽器不支持WebSocket');  } else {    console.log('您的瀏覽器支持WebSocket');    // 初始化 WebSocket 對象,指定要連接的服務器地址與端口建立連接    socket = new WebSocket(url);    // 打開事件    socket.onopen = function() {      console.log('Socket 已打開');      socket.send(params);    };    // 獲得消息事件    socket.onmessage = function(msg) {      // 發現消息進入, 開始處理前端觸發邏輯      callback(msg, socket);    };    // 關閉事件    socket.onclose = function() {      console.log('Socket 已關閉');    };    // 發生了錯誤事件    socket.onerror = function() {      console.log('Socket 發生了錯誤,請刷新頁面');      // 此時可以嘗試刷新頁面    };  }}export {  getSocket};

使用

test.vue

<script>import {getSocket} from '@/utils/socket.js';export default {  data() {    return {      wsData: {}, // 保存 websocket 數據對象      form: { // 表單        name: '',        age: ''      }    }  },  beforeDestroy() {    this.wsData.close(); // 關閉 websocket  },  created() {    this.getSocketData();  },  methods: {    // 獲取數據    getSocketData() {      let params = this.form;      getSocket(        `ws://path`,        JSON.stringify(params),        (data, ws) => {          console.log(data, ws);          // 保存數據對象, 以便發送消息          this.wsData = ws;        }      );    },    // 發送數據    sendSocketData() {      let params = this.form;      params.name = 'xx';      params.age= '18';      this.wsData.send(JSON.stringify(params));    }  }}</script>

總結

以上所述是小編給大家介紹的vue發送websocket請求和http post請求的實例代碼,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對武林網網站的支持!
如果你覺得本文對你有幫助,歡迎轉載,煩請注明出處,謝謝!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
久久五月天色综合| 国产精品美女av| 2021国产精品视频| 九九精品视频在线| 国产精品毛片a∨一区二区三区|国| 色哟哟亚洲精品一区二区| 国产成人在线精品| 国产日韩欧美夫妻视频在线观看| 中文字幕精品久久久久| 欧美性xxxx极品hd欧美风情| 全色精品综合影院| 精品国产一区二区三区久久狼黑人| 欧美成人精品一区二区| 色综合久久久888| 大荫蒂欧美视频另类xxxx| 成人中文字幕+乱码+中文字幕| 久久电影一区二区| 大荫蒂欧美视频另类xxxx| 亚洲xxx自由成熟| 亚洲aⅴ男人的天堂在线观看| 亚洲精品不卡在线| 国产在线精品成人一区二区三区| 国产精品极品美女在线观看免费| 久久国产色av| 欧美成在线观看| 精品久久久久久久久久| 国产自摸综合网| 国产精品亚洲综合天堂夜夜| 亚洲性69xxxbbb| 久久色精品视频| 91在线观看免费高清| 国产日韩欧美在线视频观看| 国产精品爱啪在线线免费观看| 欧美夫妻性生活视频| 国产精品99久久久久久白浆小说| 日韩国产精品视频| 欧美性高跟鞋xxxxhd| 91天堂在线视频| 国产欧美日韩视频| 91夜夜未满十八勿入爽爽影院| 日韩在线视频线视频免费网站| 中文字幕久久久| 欧美wwwxxxx| 精品欧美aⅴ在线网站| 国产成人av网址| 欧美电影免费观看大全| 日韩av黄色在线观看| 国产一区二区三区在线免费观看| 国产有码一区二区| 久久久久久久97| 综合网日日天干夜夜久久| 亚洲精品国产精品国自产观看浪潮| 欧美日韩亚洲网| 日本亚洲欧美三级| 国产一区二区视频在线观看| 国产噜噜噜噜噜久久久久久久久| 国产网站欧美日韩免费精品在线观看| 亚洲人成欧美中文字幕| 91在线视频导航| 久久久久久久久久久久久久久久久久av| 日韩欧美在线播放| 色综久久综合桃花网| 成人黄色在线播放| 亚洲欧美变态国产另类| 亚洲激情第一页| 欧美激情综合色综合啪啪五月| 日韩欧美在线播放| 欧美亚洲第一区| 91免费视频国产| 中文字幕国产日韩| 精品久久久久久久久久久久久久| 久国内精品在线| 精品美女久久久久久免费| 欧美与欧洲交xxxx免费观看| 欧美日在线观看| 亚洲第一页在线| 高清在线视频日韩欧美| 日韩免费在线视频| 久热精品视频在线观看一区| 日韩精品一区二区视频| 欧美疯狂做受xxxx高潮| 亚洲高清在线观看| 亚洲国产精品va在线观看黑人| 欧美激情一区二区三级高清视频| 在线看欧美日韩| 久久精品男人天堂| 久久久久久久999精品视频| 国语自产精品视频在线看一大j8| 91精品视频在线免费观看| 日韩欧美一区二区三区| 国产日韩欧美电影在线观看| 欧美丰满老妇厨房牲生活| 97精品国产97久久久久久| 亚洲午夜女主播在线直播| 久久精品国产一区| 久久久久久亚洲精品不卡| 国产精品午夜国产小视频| 欧美日韩精品在线观看| 成人一区二区电影| 91天堂在线视频| 欧美风情在线观看| 97香蕉超级碰碰久久免费软件| 国产亚洲欧美日韩一区二区| 亚洲日本aⅴ片在线观看香蕉| 91理论片午午论夜理片久久| 久久精品国产精品亚洲| 国产噜噜噜噜噜久久久久久久久| 欧美日韩国产999| 欧美大片va欧美在线播放| 亚洲国产日韩欧美在线99| 久久久久久久久久久av| 亚洲精品www久久久久久广东| 在线播放日韩精品| 2019av中文字幕| 国产视频欧美视频| 亚洲自拍高清视频网站| 日韩av大片在线| 日韩在线观看免费高清| 国产va免费精品高清在线观看| 国产精品日韩欧美综合| 亚洲欧美激情精品一区二区| 91性高湖久久久久久久久_久久99| 中文国产成人精品| 日韩国产激情在线| 国产香蕉精品视频一区二区三区| 日韩中文字幕在线观看| 在线性视频日韩欧美| 日韩在线观看免费高清| 人九九综合九九宗合| 青青草原成人在线视频| 福利一区视频在线观看| 欧美乱大交xxxxx另类电影| 精品国偷自产在线| 伊人青青综合网站| 精品久久香蕉国产线看观看gif| 国产精品va在线播放我和闺蜜| 亚洲精品美女视频| 97精品视频在线播放| 日本国产一区二区三区| 91视频九色网站| 久久青草精品视频免费观看| 欧美又大粗又爽又黄大片视频| 久久成人国产精品| 黑人巨大精品欧美一区二区三区| 久久伊人精品一区二区三区| 日韩hd视频在线观看| 日韩欧美亚洲综合| 久久综合免费视频| 九色精品免费永久在线| 久久成年人视频| 久久久久久久999| 久久精品国产电影| 91深夜福利视频| 欧美一区二粉嫩精品国产一线天| 国产欧美日韩综合精品| 成人网中文字幕| 精品日韩中文字幕| 欧美日韩国产综合视频在线观看中文| 国产v综合v亚洲欧美久久| 久久久久久91香蕉国产| 国产精品美女久久久免费| 国产精品偷伦一区二区| 97香蕉超级碰碰久久免费软件| 91精品久久久久久久久久久久久久|