1 Star 0 Fork 1

bardian / vue-stomp

加入 Gitee
与超过 600 万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README.md

vue-stomp

Stomp (Websokct) with send message timeout monitor plugin for VueJS.

Install

NPM

You can install it via NPM.

$ npm install vue-stomp

Manual

Download zip package and unpack and add the vue-stomp.js file to your project from dist folder.

https://github.com/FlySkyBear/vue-stomp/archive/master.zip

Usage

Register the plugin, it will connect to /

import VueStomp from "vue-stomp";
Vue.use(VueStomp, endpoint);

or connect to other address:

Vue.use(VueStomp, "http://otherserver:8080/endpoint");

##Memo WM: WithMonitor

Use it in your components:

<script>
    export default {
        data () {
          return {
            invokeIdCnt: 0
          }
        },
        methods: {
          onConnected(frame){
            console.log('Connected: ' + frame);
            ...
            this.$stompClient.subscribe('/topic/username', this.responseCallback, this.onFailed);
          },
          onFailed(frame){
            console.log('Failed: ' + frame);
            ...
          },         
          connectSrv(){
            var headers = {
              "login": 'guest',
              "passcode": 'guest',
              // additional header
              ...
            };
            this.connetWM(headers, this.onConnected, this.onFailed);    
          },
          getInvokeId(){
            let hex = (this.invokeIdCnt++ ).toString(16);
            var zero = '0000';
            var tmp  = 4-hex.length;
            return zero.substr(0,tmp) + hex;
          },
          send(){
              let destination = '/exchange/test'
              let invokeId = this.getInvokeId();
              ...
              let body = msgHead + invokeId + msgBody;
              this.sendWM(destination, body, invokeId, this.responseCallback, 3000);
          },
          responseCallback(frame){
            console.log("responseCallback msg=>" + frame.body);
            let invokeId = frame.body.substr(invokeIdIndex, 4);
            this.removeStompMonitor(invokeId);
          },
          disconnect(){
            this.disconnetWM();
          }
        },
        stompClient:{
          monitorIntervalTime: 100,
          stompReconnect: true,
          timeout(orgCmd) {              
            ...
          }
       }
    };

</script>

Build

This command will build a distributable version in the dist directory.

npm run build

Test

npm test

Contribution

Please send pull requests improving the usage and fixing bugs, improving documentation and providing better examples, or providing some testing, because these things are important.

License

vue-stomp is available under the MIT license.

Contact

Copyright (C) 2016 FlySkyBear

仓库评论 ( 0 )

你可以在登录后,发表评论

简介

暂无描述 展开 收起
其他
MIT
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
其他
1
https://gitee.com/zhurui536/vue-stomp.git
git@gitee.com:zhurui536/vue-stomp.git
zhurui536
vue-stomp
vue-stomp
master

搜索帮助