服务器上部署了基于xray的vless节点,不使用v2rayn等客户端的情况下,有没有办法使用nodejs纯代码实现连接发送一个代理访问网页的请求,让节点返回网页内容?
不知有没有佬实现过这类场景,问ai说相当于实现一个xray客户端,但感觉上实现简单的vless协议连接和客户端繁杂的功能相比,代码量应该不会太大的
github 有看到 vless 的 js 实现 直接调包就能用
不过不明白你为什么不用各种现成的客户端 而是自己写一个
比如国内的项目中需要代理获取被墙网站的部分资源,如gemini ai,不可能让每个使用的人都安装一个代理客户端啊
nodejs的服务器端vless实现github是有代码的,但客户端连接的实现没发现
感觉是XY问题
不如搞个中转给国内用 省力省心
设置一个sock5代理。nodejs有库可以使用sock5代理的
嗯,类似但和中转还是有很大不同的,要代理的仅仅是一个https网址请求,网址随时换,会更具灵活性
我对xray了解也不深,刚才看了下文档sock5代理是明文的,墙内发送请求不会被墙吗
用xray我记得其它节点可以转s5的
明文数据不过墙就没事,最多是隐私问题,过墙就被阻止了
直接国内公网部署xray客户端
inbound提供socks5或http监听
你node发http只和inbound的socks5交互
不要去处理协议
那不如实现一个反向代理
不如加层中转,发到中转的流量走代理出
之前v站大佬EtherDream写了个基于浏览器前端的代理程序jsproxy,还可以通过CF部署,这种代理方式对于临时访问一下海外网站的需求再合适不过了,不需要客户端安装代理程序,也不需要vps来反代。不过不知道是什么原因,项目停更很久了,而且项目似乎有部分资源文件没有开源(不确定),对于一些视频网站和依赖登录账号才能操作的网站,已经不太适用了,有点可惜。
那只是web代理,用cf转发http,如果像我这种代理一个固定性的url ,worker中实现也就十几行代码,但是web代理有个致命的问题是特征明显,过墙能力弱,由于深包检测的存在断断续续,很快就被阻断了,所以还是得借助过墙能力强的协议
所以是轻量化的临时解决方案,适用场景有限。不过我自己cf绑定域名的版本用了四五年了还没有被墙,可能运气比较好