优秀的编程知识分享平台

网站首页 > 技术文章 正文

实现vue跨域拿到登录验证码(vue跨域后请求ip会变成本地)

nanyue 2024-09-02 19:09:56 技术文章 4 ℃

正文部分

  • 后端(省略)

后端就是提供一个接口给前端(controller写接口)

后端接口:/verifyCode

后端端口号:8081

  • 前端
//页面验证码部分
<el-form-item prop="code">
                    <el-input size="normal" type="text" v-model="loginForm.code" auto-complete="off" placeholder="点击图片更换验证码" @keydown.enter.native="submitLogin" style="width: 250px"/>
                    <img :src="captchaUrl" @click="updateCaptcha" alt="" style="cursor: pointer">
</el-form-item>
<script>
    export default {
        data() {
            return {
                captchaUrl:'/verifyCode?time='+new Date(),
            }
        },
          //这里是点击刷新验证码,也就是new Date()的作用
        methods:{
            updateCaptcha(){
                this.captchaUrl='/verifyCode?time='+new Date();
            }
        }
    }
</script>
//新建一个vue.config.js来处理跨域(node.js+axios)
let proxyObj = {};
//对斜杠进行代理,普通代理
proxyObj['/'] = {
    //后期会使用websocket代理
    ws: false,
    //代理到哪里去
    target: 'http://localhost:8081',
    //发送请求头host会被设置为target('http://localhost:8081')
    changeOrigin: true,
    //不重写后端的请求地址
    pathRewrite: {
        '^/': ''
    }
}
//访问的默认的路径端口
module.exports = {
    devServer: {
        host: 'localhost',
      //前端的端口号
        port: 8080,
        proxy: proxyObj
    }
}

每日一道面试题

MVVM和MVC的区别

MVC和MVVM的区别其实并不大,都是一种设计思想。

  • 主要就是MVC中Controller演变成MVVM中的viewModel。
  • MVVM主要解决了MVC中大量的DOM操作使页面渲染性能降低,加载速度变慢,影响用户体验。
  • MVVM各部分的通信是双向的,而MVC各部分的通信是单向的。
  • MVVM是真正将页面与数据逻辑分离放到js里去实现,而MVC里面未分离。
  • MVVM是数据驱动,而MVC是DOM节点操作。

今天就这样吧!搬家有点累了

それでは

Tags:

最近发表
标签列表