Angular2 + node 接口调试解决方案

944 阅读1分钟
原文链接: www.jianshu.com

事情的起因

由于最近在使用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项目就可以完美实现代理了,简直不要太好用,以前的方法简直是蠢爆了!


本文结束,感谢阅读!


本文对你有帮助?欢迎扫码加入前端学习小组微信群: