如何在Node.js中使用wstunnel给WSS隧道添加Authorization请求头
wstunnel支持通过自定义WebSocket选项来添加请求头,你可以根据使用场景选择以下两种方式实现:
命令行启动代理
使用--ws-headers参数直接传入Authorization头:
wstunnel -L localhost:5001:wss://你的远程服务器地址 wss://你的远程服务器地址 --ws-headers "Authorization: Bearer 你的授权令牌"
替换命令中的你的远程服务器地址和你的授权令牌为实际值即可。
Node.js代码集成
在代码中通过wsOptions.headers配置请求头:
const wstunnel = require('wstunnel'); const proxyServer = wstunnel.createServer({ target: 'wss://你的远程服务器地址', wsOptions: { headers: { 'Authorization': 'Bearer 你的授权令牌' } } }); proxyServer.listen(5001, 'localhost', () => { console.log('代理服务已启动在 localhost:5001'); });
注意事项
- 确认授权头的格式符合远程服务器要求,常见格式为
Bearer + 令牌字符串,如果服务器要求其他格式(比如Basic认证),调整对应的值即可。 - 测试时可以通过抓包工具或WebSocket客户端检查请求头是否正确携带。
内容的提问来源于stack exchange,提问作者Vijay
相关产品推荐
相关产品推荐

