node.js搭建代理服务器实现跨域
前后端分离,本地前端开发调用接口会有跨域问题,一般有以下3种解决方法:
- 后端接口打包到本地运行(缺点:每次后端更新都要去测试服下一个更新包,还要在本地搭建java运行环境,麻烦)
- CORS跨域:后端接口在返回的时候,在header中加入’Access-Control-Allow-origin’:* 之类的。
- 用nodejs搭建本地http服务器,并且判断访问接口URL时进行转发,完美解决本地开发时候的跨域问题。
node.js提供模块:node-http-proxy来实现http代理
源码如下:
/**
* Created by zhaohuan on 2017/4/19.
*/
// (function creatserver(pathurl) {
var http=require('http');
var fs=require('fs');
var mime=require('mime');
var urls=require('url');
var pathurl='/Users/zhaohuan/login';
//以上路径为html,css,js的路径
//mark:在终端输入pwd获取路径
var httpProxy = require('http-proxy');
var proxy = httpProxy.createProxyServer({
target: 'http://139.224.235.133:8099/', //接口地址