首页 > 其他分享 >vue.js客服系统实时聊天项目开发(八)使用axios post请求访客初始化接口

vue.js客服系统实时聊天项目开发(八)使用axios post请求访客初始化接口

时间:2023-01-20 14:33:44浏览次数:48  
标签:初始化 axios visitor id vue message js 访客

访客的初始化,很多人可能会认为放到链接websocket的时候,通过ws去发送给服务端

但是这样会有一定的问题,因为如果网络不稳定或者ws链接断了,会进行不停的重连,这样会造次多次请求初始化流程

 

所以我会在链接websocket之前,调用一个HTTP的访客初始化接口,这样也方便进行限流,各种账户异常问题判断等逻辑

 在main.js中通过原型把axios 传递进来

import axios from 'axios'

Vue.prototype.$axios= axios

在业务逻辑里面进行调用

<script>

    export default {
      name: 'ChatApp',
        data() {
          return {
              visitor:{
                  to_id:"",
                  visitor_id:"",
              },

          }
        },
        methods: {
            visitorLogin(){
                let entId=tools.getQuery("ent_id");
                let toId=tools.getQuery("to_id");
                var _this=this;
                this.$axios.post(this.ApiHost+'/visitor_login', {
                    ent_id:entId,
                    to_id:toId,
                }).then(function (response) {
                    var code=response.data.code;
                    var msg=response.data.msg;
                    if(code!=200){
                        _this.$message({
                          message: msg,
                          type: 'error'
                        });
                        return ;
                    }
                    let result=response.data.result;
                    _this.visitor.to_id=result.to_id;
                    _this.visitor.visitor_id=result.visitor_id;

                }).catch(function (error) {
                    _this.$message({
                      message: error.message,
                      type: 'error'
                    });
                });
            },

        },
        mounted: function () {
            this.visitorLogin();
        }
    }
</script>    

这样就完成了发送post请求到访客初始化接口,会生成一个访客ID,前端需要把这个访客ID进行保存一下

唯一在线客服系统

https://gofly.v1kf.com

标签:初始化,axios,visitor,id,vue,message,js,访客
From: https://www.cnblogs.com/taoshihan/p/17062728.html

相关文章

  • vue.js客服系统实时聊天项目开发(七)ES6模板字符串进行字符串变量内嵌拼接
    在开发客服系统的时候进行字符串拼接的太多,可以使用模板字符串处理你可以使用ES6中的模板字符串来实现这个功能。模板字符串是用反引号(`)括起来的字符串,其中变量可以使用${......
  • Java/JS/Python/Go语言设计模式大全【精品源码】
    DesignPattern23种经典设计模式源码详解经典设计模式源码详解,用不同语言来实现,包括Java/JS/Python/TypeScript/Go等。结合实际场景,充分注释说明,每一行代码都经过检验,确......
  • xp 下对 pdfjs-dist 库的支持 49的chrome xp壳
    公司下壳的版本非常低,不支持es6chromiumVersion=49.0.2623.87早先是require('pdfjs-dist'),但是这里面都是es6的代码,xp下直接就崩溃了,换成了es5的打包,问题解决。这里......
  • 一种面向业务配置基于JSF广播定时生效的工具
    作者:京东物流王北永姚再毅李振1背景目前,ducc实现了实时近乎所有配置动态生效的场景,但是配置是否实时生效,不能直观展示每个机器上jvm内对象对应的参数是否已变更为准......
  • 9个优秀的 VUE 开源项目 转载
    Vue结合了React和Angular的优点,并且有着团结、活跃且庞大的社区,可以帮助解决开发中遇到的问题。开源社区不断提出解决问题的新方法。工具和库的数量也贡献量不断的增......
  • js解析Json字符串的方法
    要把一个xml字符串转(“1,2,3,4,5,6,7,8,1,2”)换成数组的形式,每个值都应该是number类型的,想当然的就用了split方法,结果。。。问题来了,服务器要求数组的值是数字,而split是字......
  • Vue 快速入门(二)
     1、Vue浏览器插件安装 安装地址https://devtools.vuejs.org/guide/installation.html   下载完后,直接将vuejs-devtools.crx文件拖到Chrome浏览器扩展程......
  • vue2安装
    参考https://blog.csdn.net/HoD_DoH/article/details/1246093511-安装node2-下载vueclinpminstall-g@vue/cli3-创建工程vuecreateproject_name......
  • Vue3中的异步组件defineAsyncComponentAPI的用法示例
    介绍当我们的项目达到一定的规模时,对于某些组件来说,我们并不希望一开始全部加载,而是需要的时候进行加载;这样的做得目的可以很好的提高用户体验。为了实现这个功能,Vue3中......
  • node.js安装
    node.js安装1.官网下载安装包下载地址:https://nodejs.org/en/download/根据自己的电脑系统选择对应的安装包,由于我用的是windows电脑(64位),下载这个安装包,是一个.msi文......