为什么sockJS添加了一个'/信息';指向给定的websocket url路径
我想打开一个带有“webapp/socket.do”路径的websocket端口。当我使用SockJS并尝试通过代码启动调用时为什么sockJS添加了一个'/信息';指向给定的websocket url路径,websocket,spring-websocket,sockjs,java-websocket,Websocket,Spring Websocket,Sockjs,Java Websocket,我想打开一个带有“webapp/socket.do”路径的websocket端口。当我使用SockJS并尝试通过代码启动调用时 var socket = new SockJS('/webapp/socket.do'); stompClient = Stomp.over(socket); stompClient.connect({}, ... 默认情况下,SockJS将在给定路径的末尾添加一个“/info”。我想知道为什么?这是可以改变还是可以防止的 在Spring M
var socket = new SockJS('/webapp/socket.do');
stompClient = Stomp.over(socket);
stompClient.connect({}, ...
默认情况下,SockJS将在给定路径的末尾添加一个“/info”。我想知道为什么?这是可以改变还是可以防止的
在Spring MVC中使用此选项并将url模式映射到DispatcherServlet(如*.do
)时,将返回404错误。由于sockJS向给定url添加了“/info”字符串,因此被阻止
Spring web.xml servlet映射代码:
<servlet-mapping>
<servlet-name>dispatch-servlet</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
调度servlet
*.做
有人知道sockJS在那里尝试什么以及为什么吗?这是sockJS协议的一部分,是强制性的。 该端点由服务器实现,并与服务器功能(如受支持的协议)进行通信。看 在这种情况下,我想您不仅需要为这个端点调整servlet映射,还需要为可能出现的其他请求调整servlet映射:websocket的HTTP升级请求,以及所有其他请求