微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

node.js – 使用nodejs服务器配置browserSync

我需要帮助来了解如何配置节点服务器和浏览器同步的端口.

在serevr.js文件中,http服务器正在侦听端口3006;
    server.listen(3006);

我希望browsersync打开浏览器并将地址指向服务器端口3006.这是http服务器侦听的端口.所以地址是localhost:3006

gulpfile.js

gulp.task('serve',function() {
browserSync.init({
    server: {
        baseDir: './dist/'
    },port: 3006
 });
});

>在mac终端,我是rungulp.这将打开浏览器localhost:3006.精细.
>在另一个终端窗口中,我启动节点服务器nodemon dist / serevr.js

我无法让他们变得一样.服务器无法启动,因为某些东西已在端口3006上运行(步骤1),或者如果我先启动服务器,则会发生以下情况.

Local: http://localhost:3007
External: http://192.168.1.63:3007

我怎样才能让他们一起工作?

在以下答案的帮助下找到解决方案:

gulp.task('serve',function() {
    browserSync.init({
        port: 3007,proxy: {
            target: "localhost:3006",ws: true
        }
    });
});

解决方法

基本上会有两台服务器在运行. nodemon运行的一个和浏览器同步运行的一个.两台服务器都不能有相同的端口.

您需要在gulp文件的浏览器同步配置部分中代理用于nodemon的端口.因此,您需要首先启动节点服务器,然后才能对浏览器同步进行代理.

如果需要启用websockets,可以通过设置ws:true来实现.

这是它的样子:

gulp.task('browserSync',function () {
    browserSync.init({
        port: 3007,// you can specify the port here
              // can't use the same port that nodemon uses.
        proxy: {
            target: 'localhost:3006',// original port
            ws: true // enables websockets
        }
    });
});

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐