VUE+node(express)实现前后端分离


Posted in Javascript onOctober 13, 2019

vue作为前端的框架,node(express)作为后端的框架。无数据库,使用端口保存数据。 VUE:

使用vue-cli构建vue项目(vueapp)。

VUE+node(express)实现前后端分离

npm install -g vue-cli(安装,安装过的就不用了)
vue init webpack vueapp

axios:(与ajax相似)

import axios from 'axios'
var url="http://localhost:3000"            //express服务器的地址
axios.get(url+'/product')               //放数据的接口
 .then(function (response) {             //收到的数据
  console.log(response);
  console.log(response.data);            //展示数据(看看是否拿到,和数据长啥样) 
  var nodeData=response.data;      
 })
 .catch(function (error) {
  console.log(error);![在这里插入图片描述](https://img-blog.csdnimg.cn/20191013132943460.jpg)
 });

axios没安装的记得装一下。(安装不细说)

node(express): 启动>>>npm start

使用express构建服务器:
VUE+node(express)实现前后端分离

新建个myapp放express
npm install express

在(routes文件夹中)建一个product,js接口

var express = require('express');      //使用express
var router = express.Router();        //放数据
/* GET home page. */
router.get('/', function (req, res, next) {
  var data = {
    code: 0,
    data: {
      name: 'aaa',
      pwd: '123'
    },
    isSuccess: true,
    msg: "请求成功"
  }
  res.json(data);
});
module.exports = router;

app.js(建立接口存放数据)

var productRouter = require('./routes/product');
app.use('/product', productRouter);

最后服务器数据有了!!!!VUE前端接收数据的链接也有了!!!但还是没办法链接!!!!这就是跨域的问题!!!

跨域:

1.端口不同 http://localhost:3000和http://localhost:8080

2.网址不同 www.baidu.com和www.aiqiyi.com

3.ip和网址不同 http://localhost:3000和http://127.0.0.1

反正除非同个网址里面,只有目录不同,才不用跨域。

开始解决!!

express>>>app.js

//跨域问题解决方面
const cors = require('cors'); 
app.use(cors({ 
  origin:['http://localhost:8080'],
  methods:['GET','POST'],
}));
//跨域问题解决方面
app.all('*',function (req, res, next) {
 res.header('Access-Control-Allow-Origin', 'http://localhost:8080');
 res.header('Access-Control-Allow-Headers', 'Content-Type');
 res.header('Access-Control-Allow-Methods', 'PUT, POST, GET, DELETE, OPTIONS');
 next(); 
});

cors需要安装,是一个依赖。

结果:
服务器(express):3000接口数据
VUE+node(express)实现前后端分离
VUE+node(express)实现前后端分离

搞定了,以上就是本次介绍的全部知识点,感谢大家的学习和对三水点靠木的支持。

Javascript 相关文章推荐
js简单的弹出框有关闭按钮
May 05 Javascript
深入浅析AngularJS中的module(模块)
Jan 04 Javascript
Bootstrap基本插件学习笔记之Tooltip提示工具(18)
Dec 08 Javascript
jquery自定义插件结合baiduTemplate.js实现异步刷新(附源码)
Dec 22 Javascript
setTimeout函数的神奇使用
Feb 26 Javascript
bootstrap 通过加减按钮实现输入框组功能
Nov 15 Javascript
推荐15个最好用的JavaScript代码压缩工具
Feb 13 Javascript
详解小程序用户登录状态检查与更新实例
May 15 Javascript
html+jQuery实现拖动滑块图片拼图验证码插件【移动端适用】
Sep 10 jQuery
Vue页面刷新记住页面状态的实现
Dec 27 Javascript
部署vue+Springboot前后端分离项目的步骤实现
May 31 Javascript
vue实现购物车列表
Jun 30 Javascript
javascript sort()对数组中的元素进行排序详解
Oct 13 #Javascript
javaScript把其它类型转换为Number类型
Oct 13 #Javascript
js 实现watch监听数据变化的代码
Oct 13 #Javascript
15 分钟掌握vue-next响应式原理
Oct 13 #Javascript
Vue3.x源码调试的实现方法
Oct 13 #Javascript
使用webpack将ES6转化ES5的实现方法
Oct 13 #Javascript
vue中uni-app 实现小程序登录注册功能
Oct 12 #Javascript
You might like
通过curl模拟post和get方式提交的表单类
2014/04/23 PHP
php实现粘贴截图并完成上传功能
2015/05/17 PHP
php进程(线程)通信基础之System V共享内存简单实例分析
2019/11/09 PHP
PHP变量的作用范围实例讲解
2020/12/22 PHP
HTML IMG标签 onload 内存溢出导致浏览器CPU占用过高
2021/03/09 Javascript
不用写JS也能使用EXTJS视频演示
2008/12/29 Javascript
优化 JavaScript 代码的方法小结
2009/07/16 Javascript
理解JavaScript中的对象 推荐
2011/01/09 Javascript
仅IE不支持setTimeout/setInterval函数的第三个以上参数
2011/05/25 Javascript
JavaScript(js)设置默认输入焦点(focus)
2012/12/28 Javascript
ie下jquery.getJSON的缓存问题的处理方法
2013/03/29 Javascript
javascript生成img标签的3种实现方法(对象、方法、html)
2015/12/25 Javascript
Boostrap模态窗口的学习小结
2016/03/28 Javascript
Javascript之String对象详解
2016/06/08 Javascript
JavaScript实现解析INI文件内容的方法
2016/11/17 Javascript
详解Angular的内置过滤器和自定义过滤器【推荐】
2016/12/26 Javascript
JS条形码(一维码)插件JsBarcode用法详解【编码类型、参数、属性】
2017/04/19 Javascript
vue-cli webpack 开发环境跨域详解
2017/05/18 Javascript
详解如何使用koa实现socket.io官网的例子
2018/11/04 Javascript
Vue请求java服务端并返回数据代码实例
2019/11/28 Javascript
微信小程序 wx:for 与 wx:for-items 与 wx:key的正确用法
2020/05/19 Javascript
Paypal支付不完全指北
2020/06/04 Javascript
Python金融数据可视化汇总
2017/11/17 Python
django 解决manage.py migrate无效的问题
2018/05/27 Python
python实现五子棋游戏
2019/06/18 Python
python中selenium操作下拉滚动条的几种方法汇总
2019/07/14 Python
基于logstash实现日志文件同步elasticsearch
2020/08/06 Python
CSS3中新增的对文本和字体的设置
2020/02/03 HTML / CSS
ONLY德国官方在线商店:购买时尚女装
2017/09/21 全球购物
校园安全广播稿
2014/02/08 职场文书
竞选团支书演讲稿
2014/04/28 职场文书
对教师的评语
2014/04/28 职场文书
为自己工作观后感
2015/06/11 职场文书
上班旷工检讨书
2015/08/15 职场文书
Win11运行育碧游戏总是崩溃怎么办 win11玩育碧游戏出现性能崩溃的解决办法
2022/04/06 数码科技
Mysql 数据库中的 redo log 和 binlog 写入策略
2022/04/26 MySQL