nodejs socket服务器,如何通过url向后端传递参数?
发布于 10 年前 作者 iyangyi 10735 次浏览 最后一次编辑是 8 年前

如题。 搭建好socket.io 后,成功。看Network链接信息为: http://127.0.0.1:8081/socket.io/1/?t=1401081998752。 t参数是自动生成的,我如何多加一个参数,比如 : http://127.0.0.1:8081/socket.io/1/?t=1401081998752&token=232dsjfased3。

哪位之前碰到这样的问题,希望解答下。谢谢亲们。

7 回复

为什么要把参数放在链接里传回去??

因为我希望传入参数后,在Authorization里进行验证这个token。如果token不对,不让连接。不然,还可以从哪里把这个token传给后端socket。

socket没有接收参数的功能吧?这个是Http?

首先,这个url是用来保持socket的心跳的,其次,你可以把token设置在cookie里,然后在socket connect后检查handshake中cookie里的token,这样不就可以了??

谢谢。你说的这种方法在同一台服务器上可以实现了。但是,我们的这个比较特殊蛋疼:我们cookie跨域了,取不到。socket.io服务器放在另一台服务器b.com上,我们的js代码是在a.com上连接的。handshake中可以取到的cookie是b.com上的,取不到a.com上的。b.com的cookie我们不可写。我凌乱了。

恩。是的。貌似没找到。可以通过handshake的cookie来传递参数。

额,这样还是可以取的啊,(1)socket io里面改动Access头部 (2)crossdomain

回到顶部