【问题标题】:Can JavaScript listen to UDP ports within a browser?JavaScript 可以侦听浏览器中的 UDP 端口吗?
【发布时间】:2019-09-29 13:28:23
【问题描述】:

我目前有一个在 Flutter 中制作的应用程序,并希望制作一个 Web 应用程序。此应用侦听 UDP 数据,解码信息并将其显示在屏幕上。

我了解浏览器无法发送 UDP 数据。我不关心这个,我只对听数据感兴趣。

研究:
我了解 sockets.io 仅适用于 TCP,因此不适用于我的应用程序。
看看 webRTC,似乎有可能,因为它同时支持 TCP 和 UDP:Does WebRTC use TCP or UDP?

我能用 webRTC 做我想做的事吗?还是有其他图书馆可以让我这样做,还是不可能?

注意: 此 Web 应用侦听用户网络的本地 IP 地址。

【问题讨论】:

    标签: javascript sockets browser udp


    【解决方案1】:

    简短回答:。为什么?

    由于分布式拒绝服务 (DDOS) 攻击等安全限制,这使得它在 JavaScript 中太容易受到攻击。

    最接近客户端 JS 的可用技术(据我所知)是 WebRTC

    借助 WebRTC,您可以使用 SRTP 上的 DataChannels 和 ICE 作为可能的解决方案。

    另见:

    【讨论】:

    • 您提供的链接是关于发送 UDP 数据的。我只想听 UDP 数据。可以听吗?如果我错过了理解,请告诉我。
    • 我不确定,使用 JavaScript 使用端口是有风险的,因为您需要在服务器和客户端上都实现强大的安全性。您可以检查 Node.js 并尝试,这里有一个类似 UDP 套接字的文档:nodejs.org/api/dgram.html
    • 感谢您的回复。我已经在使用 Node.JS 进行服务器端开发,但是这将无法在客户端上运行?能够监听客户端的连接对我来说很重要,因为这是数据的来源。
    • @iProgram,查看这篇文章:stackoverflow.com/questions/51028442/…
    • 这只是在服务器端。请注意,假设我可以制作一个 React Native 和一个 Electron 应用程序?这样,我仍然使用 HTML、CSS 和 JavaScript 进行开发,但可以访问原生 API。
    猜你喜欢
    • 2017-09-23
    • 2013-10-13
    • 2017-06-04
    • 1970-01-01
    • 2013-07-10
    • 2010-12-20
    • 2013-12-09
    • 1970-01-01
    相关资源
    最近更新 更多