Vue前后端不同端口的实现方法
今日长沙网络推广带来一篇关于Vue前后端不同端口实现的,希望对大家有所帮助。在数字化时代,前后端分离已成为主流开发模式,而Vue与Node.js的结合更是广泛运用。当我们的前端Vue运行在8080端口,而后端Node.js运行在8085端口时,如何确保数据流通无阻?下面我们来一下。
要解决的是跨域问题。在浏览器向前端服务器发起请求时,由于前后端运行在不同的端口上,浏览器会阻止这次跨域请求,从而引发“No 'Access-Control-Allow-Origin' header is present on the requested resource”错误。这时,我们需要在服务器端程序中添加相关配置。
一、服务器端程序(位于node_proxy/index.js)
在这里,我们需要设置一系列的头信息来保证跨域请求的顺利进行。如下:
app.all('', function (req, res, next) {
res.header('Access-Control-Allow-Origin', req.headers.origin || '');
res.header('Access-Control-Allow-Headers', 'Content-Type,Content-Length, Authorization,Origin,Accept,X-Requested-With');
res.header('Access-Control-Allow-Methods', 'GET, POST, OPTIONS, PUT, PATCH, DELETE');
res.header('Access-Control-Allow-Credentials', true);
res.header('X-Powered-By', ' 3.2.1');
res.header('Content-Type', 'application/json;charset=utf-8');
if (req.method === 'OPTIONS') {
res.sendStatus(200);
} else {
next();
}
});
这段代码确保了浏览器在发起请求时能够获取到所需的头部信息,从而允许跨域请求。
二、前端axios get请求处理(位于Card模板下)
在前端,我们使用axios来发起get请求。例如:
mounted(){
axios.get(HOST)
.then(response => {
this.sed = response.data.data;
})
}
三、配置proxyTable(位于config/index.js)
为了简化开发过程,我们可以配置proxyTable来代理后端请求。例如:
proxyTable: {
'/seller': {
target: ' // 后端接口地址
changeOrigin: true, // 改变请求头中的host,实现跨域
pathRewrite: {
}
}
}
这样配置后,前端在发起请求时,会自动将请求转发到配置的后端地址,从而避免了繁琐的跨域配置。
以上便是长沙网络推广分享的Vue前后端不同端口的实现方法。在实际开发中,我们需要注意前后端的数据交互方式以及跨域问题的解决方式。希望这篇文章能给大家带来启示和帮助。如需了解更多关于Vue或Node.js的知识,请持续关注我们的分享。更多精彩内容,敬请期待!
编程语言
- Vue前后端不同端口的实现方法
- MySQL中USING 和 HAVING 用法实例简析
- 如何在thinkphp中使用windows计划任务定时执行php文
- 在JavaScript中操作数组之map()方法的使用
- jquery精度计算代码 jquery指定精确小数位
- php中通过数组进行高效随机抽取指定条记录的算
- JavaScript对数组进行随机重排的方法
- jQuery使用ajax方法解析返回的json数据功能示例
- vue2.0 自定义日期时间过滤器
- SQL Server数据类型char、nchar、varchar、nvarchar的区别
- NodeJs搭建本地服务器之使用手机访问的实例讲解
- PHP 芝麻信用接入的注意事项
- 微信小程序获取用户信息并保存登录状态详解
- PHP实现从上往下打印二叉树的方法
- javascript简单实现类似QQ头像弹出效果的方法
- SQL Server简单查询示例汇总