美文网首页angularAngular.js专场Web前端之路
Angular2 + node 接口调试解决方案

Angular2 + node 接口调试解决方案

作者: sunny_lvy | 来源:发表于2017-03-10 11:24 被阅读1418次

事情的起因

由于最近在使用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
    }
}
  • /api为代理规则,因为我接口都是以api开头的,大家可以根据自己的实际情况设置
  • 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项目就可以完美实现代理了,简直不要太好用,以前的方法简直是蠢爆了!


本文结束,感谢阅读!

相关文章

网友评论

  • 咕嘟咕嘟li:请问一下,我按照你的方法去实现代理,angular项目启动后依然和没有设置代理一样请求http://localhost:4200这个端口,后端使用node实现,所有的api已经写好了,接口运行是http://localhost:2000的端口,目前为止如果要使用后端的api只能每次都ng build然后去调试,太麻烦了,这样的话还有办法实现代理吗
    sunny_lvy:嗯嗯 检查一下
    咕嘟咕嘟li:@sunny_lvy 是这个proxy.conf.json文件吗,还是是什么,我也是才学angular,一头雾水
    sunny_lvy:@安然Kingw 不好意思 才看见 应该是代理的文件不对吧
  • 7694168383b5:老哥 问个问题 linux服务器搭建了cli 但是上线后 访问失败 怎么解决 百度了好多 还是无法解决,求帮助
    sunny_lvy:服务器用的什么呢 给我发私信吧

本文标题:Angular2 + node 接口调试解决方案

本文链接:https://www.haomeiwen.com/subject/naengttx.html