webpack-dev-server插件中,bonjour这个属性什么用的

发布于 2022-09-06 02:13:47 字数 64 浏览 12 评论 0

看webpack-dev-server插件的时候,看到bonjour属性,不太明白它的作用,以及在什么时候使用它?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

美胚控场 2022-09-13 02:13:47

Apple的zeroconf协议技术实现 – Bonjour

Bonjour是由apple实现的zeroconf协议的技术产品,Bonjour来源于法语,意思为你好。
使用了zeroconf技术的产品和服务,在网络中自动传播它们自己的服务信息并聆听其它设备的服务信息,设备之间就象在打招呼,这也是命名为Bonjour(法语:你好)的原因。
Bonjour是一套跨平台的产品,可以使用在Mac,Linux和Winows,以及是兼容POSIX的操作系统上,并且apple已经將其开源,所以也可以方便应用于各个产品。
Bonjour是由纯C编写的,同时也提供了Java的接口,目前如python或者ruby语言也可以很方便地调用使用它。

zeroconf介绍

Zeroconf全称为Zero configuration networking,中文名则为零配置网络服务规范,是一种用于自动生成可用IP地址的网络技术,不需要额外的手动配置和专属的配置服务器。

“零配置网络服务”的目标,是让非专业用户也能便捷的连接各种网络设备,例如计算机,打印机等。整个搭建网络的过程都是通过程式自动化实现。如果没有zeroconf,用户必须手动配置一些服务,例如DHCP、DNS,计算机网络的其他设置等。这些对非技术用户和新用户们来说是很难的事情。

使用例子来形象地说明:
用户拥有一台apple tv和一台iPhone4s,那之只要都连入到同一个无线局域网内,iphone4s就会自动找出apple tv,那么在播放音乐或者视频时候,用户只要点击推送,就可以讲音乐和视频推送到apple tv上播放。

以上内容拷贝自 https://www.xuebuyuan.com/3195396.html


通过上文可以知道Bonjour是干什么的,但是用在webpack-dev-server中我没有感受到有什么明显的变化,通过一个简单的demo看下开启关闭bonjour的区别:

// ...
const webpackDevServer = new WebpackDevServe(compiler, {
    stats: {
        colors: true
    },
    open: true,
    contentBase: path.resolve(appDirectory, 'build'),
    publicPath: '/',
    bonjour: false,
    port: 8080
})
webpackDevServer.listen(8080, '127.0.0.1', () => {
    console.log('Starting server on http://localhost:8080')
})

简单配置,设置bonjour为false,运行后输出如下结果
false 结果.png
将bonjour改为true,运行后输出如下结果
其中port需要配置,否则bonjour设置为true后运行后会报错
true 结果.png

可以看出,输出中差别在于设置为true后输出多了一句Broadcasting "http" with subtype of "webpack" via ZeroConf DNS (Bonjour),不过设置bonjour为true或false程序都能正常启动,可能是写的小demo太过简单,没有发现具体差别

再等等,也许会有大神给讲解一下呢

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文