websocket的客户端端口号如何在谷歌浏览器中获取

     2023-02-16     61

关键词:

【中文标题】websocket的客户端端口号如何在谷歌浏览器中获取【英文标题】:How client port number of websocket get in Google Chrome 【发布时间】:2020-07-29 11:40:38 【问题描述】:

在javascript中创建一个websocket connect 使用new WebSocket("ws://localhost:8080/ws") 然后使用一个在服务器和客户端之间建立的websocket connect,但是客户端的端口号如何在google chrome中获取?

【问题讨论】:

【参考方案1】:

WebSocket 是 HTTP 连接的Upgrade,这意味着它在 TCP 层上工作。客户端由操作系统分配任意随机端口号来运行,通常我们不关心它。这就是为什么“高级”语言(例如浏览器上下文中的 JavaScript)甚至根本不允许您检索它。

【讨论】:

是的,我只是想知道它是如何在谷歌浏览器中生成的.....我想知道代码【参考方案2】:

如果应用程序没有选择特定端口(即,在套接字术语中,它 不会将其套接字绑定()到特定端口),然后 TCP 和 UDP 为套接字分配一个唯一的临时端口(即短期)编号。 在这种情况下,应用程序(通常是客户端)并不关心它使用哪个端口号,但分配一个端口是必要的,以便传输层协议可以识别通信端点。 它还具有这样的结果,即通信通道另一端的对等应用程序知道如何与该应用程序通信。如果我们将套接字绑定到端口 0,TCP 和 UDP 也会分配一个临时端口号。 IANA 将 49152 到 65535 范围内的端口指定为动态端口或私有端口,目的是这些端口可由本地应用程序使用并分配为临时端口。 然而,各种实现从不同范围分配临时端口。 在 Linux 上,范围由文件 /proc/sys/net/ipv4/ip_local_port_range 中包含的两个数字定义(并且可以通过其修改)。

在linux中通过以下函数获取端口:

Socket.c (linux-2.6.18/net/sctp): .get_port    = sctp_get_port,
Socket.c (linux-2.6.18/net/sctp): .get_port = sctp_get_port,
Tcp_ipv4.c (linux-2.6.18/net/ipv4): .get_port  = tcp_v4_get_port,
Tcp_ipv6.c (linux-2.6.18/net/ipv6): .get_port  = tcp_v6_get_port,
Udp.c (linux-2.6.18/net/ipv4): .get_port    = udp_v4_get_port,
Udp.c (linux-2.6.18/net/ipv6): .get_port    = udp_v6_get_port,

【讨论】:

如何使用谷歌 API 客户端在谷歌地图 Android 中显示我的当前位置

】如何使用谷歌API客户端在谷歌地图Android中显示我的当前位置【英文标题】:HowtoshowmycurrentlocationinGoogleMapAndroidusinggoogleAPIclient【发布时间】:2016-02-1719:44:20【问题描述】:我想在地图上显示我的位置并放大它。我想使用GoolgeAPIC... 查看详情

如何在谷歌应用引擎上使用 laravel-websockets 和 nginx 反向代理?

】如何在谷歌应用引擎上使用laravel-websockets和nginx反向代理?【英文标题】:Howtouselaravel-websocketswithnginxreverseproxyongoogleappengine?【发布时间】:2019-04-2315:22:47【问题描述】:我正在尝试将laravel-websockets部署到谷歌应用引擎服务中... 查看详情

如何在谷歌浏览器中禁用站点隔离?

】如何在谷歌浏览器中禁用站点隔离?【英文标题】:HowtodisableSiteIsolationinGoogleChrome?【发布时间】:2018-07-1307:57:42【问题描述】:Chrome67在Windows、Mac、Linux和Chrome操作系统上启用了SiteIsolation,这会增加10-13%的内存使用量,并给We... 查看详情

如何在谷歌应用引擎中使用 Candy(基于 js 的 jabber 客户端)?

】如何在谷歌应用引擎中使用Candy(基于js的jabber客户端)?【英文标题】:HowtouseCandy(jsbasedjabberclient)withgoogleappengine?【发布时间】:2013-01-0204:59:58【问题描述】:是否可以将Candyjabber客户端与应用引擎一起使用?http://candy-chat.git... 查看详情

如何在谷歌浏览器中设置兼容性视图

...在谷歌商店或者网上搜索下载谷歌插件IETab,然后打开谷歌浏览器,点击右上角地址栏后面的三条设置按钮。2、在下拉列表中选择“设置”。3、选择“扩展程序”选项。4、将下载好的文件夹中的IETab插件直接拖入谷歌浏览器中。5... 查看详情

在谷歌浏览器中调试时如何终止脚本执行?

】在谷歌浏览器中调试时如何终止脚本执行?【英文标题】:HowtoterminatescriptexecutionwhendebugginginGoogleChrome?【发布时间】:2012-10-1912:58:15【问题描述】:在GoogleChrome调试器中单步执行JavaScript代码时,如果我不想继续,如何终止脚... 查看详情

在谷歌浏览器中如何测试js代码

点击谷歌浏览器右上角三个点点击更多工具点击开发者工具或者在浏览器页面空白处右击鼠标,点击检查上面两种方法都会显示以下信息:Elements:看到页面元素的样式等信息Console:终端的输出信息,在这个... 查看详情

如何在谷歌浏览器中一步删除所有断点?

】如何在谷歌浏览器中一步删除所有断点?【英文标题】:HowtoremoveallbreakpointsinonestepinGoogleChrome?【发布时间】:2011-06-2115:47:28【问题描述】:使用版本11。[更新]现在有一个featurerequest。[更新]featurerequest已关闭(2011年12月)!【... 查看详情

关于python网络编程中端口号为啥不会重复问题释义

...这个范围内随机生成一个给开发的应用程序使用,这样TCP客户端访问TCP服务端的时候就会因为无法确认TCP服务端端口号而出现访问不了的问题)2、TCP客户端端口号是程序访问TCP服务端请求连接时,从用户电脑里面正在运行的程... 查看详情

iscroll在谷歌浏览器中的问题

...还有很多其他功能。不过,在使用iScroll的时候,在谷歌浏览器中出现不支持的情况,即,做移动的时候,出现卡顿或是每次只下拉或上拉几像素的问题。所以,,应该将PointerEvent关闭。那么什么是PointerEvent?又该如何关闭呢?... 查看详情

在谷歌浏览器中播放 avi 视频

】在谷歌浏览器中播放avi视频【英文标题】:Playavivideosingooglechrome【发布时间】:2017-03-2207:32:17【问题描述】:如何在chrome中播放avi视频?我的代码是<center><videocontrols><sourcesrc="plaque.avi"type="video/avi"></source></v... 查看详情

当谷歌浏览器中有很多 websocket 连接时,socket io 会中断

】当谷歌浏览器中有很多websocket连接时,socketio会中断【英文标题】:Socketiobreakswhenalotwebsocketconnectionsingooglechrome【发布时间】:2020-11-1313:10:52【问题描述】:我在googlechrome浏览器中创建了60个到socket.io服务器的客户端连接。服务... 查看详情

如何访问使用 websockets 发送的烧瓶中的 formData?Flask-SocketIO

】如何访问使用websockets发送的烧瓶中的formData?Flask-SocketIO【英文标题】:HowtoaccessformDatainflasksentusingwebsockets?Flask-SocketIO【发布时间】:2016-08-0805:06:35【问题描述】:如何使用Web套接字访问发送到Flask的表单数据?我在谷歌浏览... 查看详情

谷歌在谷歌浏览器中阻止了网站/域

】谷歌在谷歌浏览器中阻止了网站/域【英文标题】:Website/domainbeingblockedbygoogleinGoogleChrome【发布时间】:2018-10-1518:33:50【问题描述】:几天以来,我们在一个名为“id-validation.us”的域中遇到了问题。谷歌在从谷歌浏览器浏览时... 查看详情

在谷歌浏览器中隐藏视频的原生播放按钮

】在谷歌浏览器中隐藏视频的原生播放按钮【英文标题】:Hidenativeplaybuttonforvideoingooglechrome【发布时间】:2017-05-0418:59:53【问题描述】:我正在尝试隐藏视频中心的默认播放按钮。我有一个自定义播放按钮,但本机播放按钮显示... 查看详情

angularjs的路由怎么在谷歌浏览器中不能用

参考技术Arouter和浏览器是没有关系的,你看是不是路径传入的不正确 查看详情

在谷歌浏览器中禁用位置栏

】在谷歌浏览器中禁用位置栏【英文标题】:DisablelocationbarinGoogleChrome【发布时间】:2012-11-3006:43:07【问题描述】:我在jQuery中使用window.open进行点击事件。问题是我想禁用位置栏,它在Safari中有效,但在Chrome中无效。我在某处... 查看详情

在谷歌浏览器中, getBoundingClientRect().x 未定义

】在谷歌浏览器中,getBoundingClientRect().x未定义【英文标题】:Ingooglechrome,getBoundingClientRect().xisundefined【发布时间】:2014-11-2711:24:16【问题描述】:我正在画布上执行绘图操作。在我看来,计算相对于画布左上角的光标位置的最... 查看详情