javascript – Problem mit URL mit Verzeichnis in socket.io connect
世界只因有你
世界只因有你 2017-05-16 13:35:59
0
1
709

Verwenden Sie socket.io, um Websocket zu implementieren. Der Backend-Link lautet jetzt wie folgt: ws://103.31.201.1/some. Verwenden Sie den Nginx-Proxy, um Nicht-80-Ports in der URL zu entfernen (Sie dürfen keine Ports haben). wissen), aber in der eigentlichen Anfrage entfernt socket.io immer /some und die Anfragen werden an ws://103.31.201.1 gesendet. Wie geht man mit diesem Problem um?

var socket = io.connect('ws://103.31.201.1/some')
socket.on('even_name',function(data){
   console.log(data);
})

Die gesendete Anforderungs-URL lautet:

http://103.31.201.1/socket.io/?EIO=3&transport=polling&t=1492593587367-0

Es gibt keinen Verzeichnispfad wie /some in der URL, was dazu führt, dass der Socket keine Verbindung herstellen kann

Ergänzung: Perfekt gelöst:

var socket = io.connect('ws://103.31.201.1', {path: '/some/socket.io'})
socket.on('even_name',function(data){
   console.log(data);
})

Standardmäßig zeigt der Pfad auf /socket.io. Sie können den Pfad voreinstellen, um ein Verzeichnis hinzuzufügen

世界只因有你
世界只因有你

Antworte allen(1)
滿天的星座

你好,我遇到了你之前发的这个问题,根据你的解决方案配置了path之后,在nginx的access日志中发现请求返回状态码是400,你知道是怎么回事吗/q/10... socket.io connect中url带目录的问题

Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage