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
        }
    });
});

相关文章

这篇文章主要介绍“基于nodejs的ssh2怎么实现自动化部署”的...
本文小编为大家详细介绍“nodejs怎么实现目录不存在自动创建...
这篇“如何把nodejs数据传到前端”文章的知识点大部分人都不...
本文小编为大家详细介绍“nodejs如何实现定时删除文件”,内...
这篇文章主要讲解了“nodejs安装模块卡住不动怎么解决”,文...
今天小编给大家分享一下如何检测nodejs有没有安装成功的相关...