在 JavaScript 中,你可以使用内置的 URL
对象来解析 WebSocket 的请求 URI。这个对象能够方便地解析出 URL 的不同部分,包括协议、主机名、端口和路径等。
下面是如何使用 URL
对象来解析一个 WebSocket URL 的示例:
const wsUri = "wss://10.10.3.120:80/grafana/api/live/ws";
try {
const url = new URL(wsUri);
const parsedUrl = {
protocol: url.protocol, // 'wss:'
hostname: url.hostname, // '10.10.3.120'
port: url.port, // '80'
pathname: url.pathname // '/grafana/api/live/ws'
};
console.log(parsedUrl);
} catch (error) {
console.error("Invalid WebSocket URL:", error);
}
解释:
new URL(wsUri)
:创建一个新的 URL 对象。url.protocol
:获取协议(如wss:
)。url.hostname
:获取主机名(如10.10.3.120
)。url.port
:获取端口号(如80
)。url.pathname
:获取路径(如/grafana/api/live/ws
)。
这种方法简单且直观,适合于处理任何有效的 URL,包括 WebSocket 请求。
内容由零声教学AI助手提供,问题来源于学员提问