使用gulp-webserver与代理和中间件

Cha*_*kin 3 proxy angularjs

我正在尝试让gulp-webserver使用代理和中间件.

我的角应用程序应该在端口3000上使用gulp-webserver运行我的Laravel后端在带有URL的apache上运行:" http://backend.api/api/v1 "

现在我想在我的角度应用中重定向/代理所有请求,以'/ api'开头到'backend.api/api /'

示例:对于ajax的角度为url:'/ api/v1/users'应该转到'backend.api/api/v1/users'并从那里获取它的json数据.

sry在backend.api url前面缺少http - 但是stackoverflow不允许我在一个帖子中有超过2个链接.

我已经尝试了几个小时让它与gulp-webserver一起使用在gulp-connect上它正在使用这个设置:

gulp.task('webserver', function () {
    plugins.connect.server({
        root: paths.distDevelopFolder,
        port: 3000,
        middleware: function (connect, o) {
            return [(function () {
                var url = require('url');
                var proxy = require('proxy-middleware');
                var options = url.parse('http://backend.api/api');
                options.route = '/api';
                return proxy(options);
            })(), historyApiFallback];
        }
    });
});
Run Code Online (Sandbox Code Playgroud)

mar*_*dol 5

我正在使用这样的gulp-webserver:

var webserver = require("gulp-webserver")    
gulp.task('webserver', function(){
    return gulp
        .src([paths.distDevelopFolder])
        .pipe(webserver({
            port: 3000,
            livereload: true,
            open: 'http://localhost:3000',
            proxies: [
                {
                    source: '/api', target: 'http://backend.api/api'
                }
            ]
        }));
    });
Run Code Online (Sandbox Code Playgroud)