关于Angular2 + node接口调试的解决方案


Posted in Javascript onMay 28, 2017

事情的起因

由于最近在使用Angular + node开发,采取的办法一直都是约定好接口,然后node实现,再编写前端。但是这样有一个很麻烦的问题:编写前端的时候无法调用接口,不能很好地测试,只能一口气写完再编译后放到后端来测试。

经常会因为解决一些小的问题而反复的编译、调试,浪费很多不必要的时间。

解决方案

偶然发现webpack-dev-server可以实现代理请求(把指定的url规则转发到其他地址),所以就试了一下。由于项目使用了Angular-cli构建,并没有webpack配置文件,悲伤。于是又去google上搜索了一圈Angular-cli,找到了Angular-cli实现代理的解决方案。

在项目目录下创建文件proxy.conf.json:

{
 "/api": {

  "target": "http://localhost:3000",

  "secure": false
 }
}

 1、/api为代理规则,因为我接口都是以api开头的,大家可以根据自己的实际情况设置

 2、target为目标服务地址,比如一个get请求的地址为http://localhost:4200/api/cards/all会被代理为

       http://localhost:3000/api/cards/all

       secure为是否开启ssl验证,在这里设置为false

接下来只需要启动node服务,再使用ng serve --proxy-config proxy.conf.json来启动自己的Angular项目就可以完美实现代理了,简直不要太好用,以前的方法简直是蠢爆了!

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家三水点靠木的支持。

Javascript 相关文章推荐
JS跨域总结
Aug 30 Javascript
JavaScript实现网页上的浮动广告的简单方法
Jun 14 Javascript
javascript检测两个数组是否相似
May 19 Javascript
js和jquery实现监听键盘事件示例代码
Jun 24 Javascript
基于javascript简单实现对身份证校验
Jan 25 Javascript
JS操作JSON方法总结(推荐)
Jun 14 Javascript
jQuery插件FusionCharts绘制2D柱状图和折线图的组合图效果示例【附demo源码】
Apr 10 jQuery
AngularJS 验证码60秒倒计时功能的实现
Jun 05 Javascript
纯JavaScript实现实时反馈系统时间
Oct 26 Javascript
vue弹窗消息组件的使用方法
Sep 24 Javascript
详解Vue 项目中的几个实用组件(ts)
Oct 29 Javascript
jquery实现鼠标悬浮弹出气泡提示框
Dec 23 jQuery
对象不支持indexOf属性或方法的解决方法(必看)
May 28 #Javascript
设置cookie指定时间失效(实例代码)
May 28 #Javascript
Mac系统下Webstorm快捷键整理大全
May 28 #Javascript
获取url中用&隔开的参数实例(分享)
May 28 #Javascript
Javarscript中模块(module)、加载(load)与捆绑(bundle)详解
May 28 #Javascript
js每隔两秒输出数组中的一项(实例)
May 28 #Javascript
javascript 封装Date日期类实例详解
May 28 #Javascript
You might like
mysql,mysqli,PDO的各自不同介绍
2012/09/19 PHP
PHP+swoole实现简单多人在线聊天群发
2016/01/19 PHP
php ci 获取表单中多个同名input元素值的代码
2016/03/25 PHP
PHP时间戳和日期相互转换操作实例小结
2018/12/18 PHP
jQuery textarea的长度进行验证
2009/05/06 Javascript
js数组的操作详解
2013/03/27 Javascript
JS定时关闭窗口的实例
2013/05/22 Javascript
js鼠标点击图片实现随机变换图片的方法
2015/02/16 Javascript
javascript实现相同事件名称,不同命名空间的调用方法
2015/06/26 Javascript
JS选中checkbox后获取table内一行TD所有数据的方法
2015/07/01 Javascript
JavaScript数据库TaffyDB用法实例分析
2015/07/27 Javascript
jQuery针对input的class属性写了多个值情况下的选择方法
2016/06/03 Javascript
JavaScript获取select中text值的方法
2017/02/13 Javascript
Vue SSR 组件加载问题
2018/05/02 Javascript
vscode中vue-cli项目es-lint的配置方法
2018/07/30 Javascript
layui表格内容溢出的解决方法
2019/09/06 Javascript
vue 图片裁剪上传组件的实现
2020/11/12 Javascript
[02:38]2018年度DOTA2最佳劣单位选手-完美盛典
2018/12/17 DOTA
python根据出生日期获得年龄的方法
2015/03/31 Python
Python实现Sqlite将字段当做索引进行查询的方法
2016/07/21 Python
在Django同1个页面中的多表单处理详解
2017/01/25 Python
关于python pyqt5安装失败问题的解决方法
2017/08/08 Python
Python中的id()函数指的什么
2017/10/17 Python
Python IDLE清空窗口的实例
2018/06/25 Python
Pandas之缺失数据的实现
2021/01/06 Python
Kipling凯浦林美国官网:世界著名时尚休闲包袋品牌
2016/08/24 全球购物
三星法国官方网站:Samsung法国
2019/10/31 全球购物
EJB2和EJB3在架构上的不同点
2014/09/29 面试题
幼儿园保育员辞职信
2014/01/12 职场文书
餐饮收银员岗位职责
2014/02/07 职场文书
市场专员岗位职责
2014/02/14 职场文书
委托书范本
2014/04/02 职场文书
建筑工程质量通病防治方案
2014/06/08 职场文书
本科毕业生应聘自荐信范文
2014/06/26 职场文书
2015年酒店工作总结范文
2015/04/07 职场文书
python入门学习关于for else的特殊特性讲解
2021/11/20 Python