我有一個應用程序使用websockets(SockJs上的STOMP),並在後端使用Spring。應用程序在Tomcat上的localhost上正常工作(websockets),但是當我部署到Heroku或AWS Web Sockets停止工作時。 在Angular2在本地主機上工作但不是Heroku的Websocket(更新)
let sockjs = new SockJS('/rest/add?jwt=' + this.authService.getToken(), {"devel":true,"debug":true}, {"transports":["websocket"]});
我WebSocket的配置我也試圖與
{"disabled_transports":["websocket"]}
但都失敗了。 的web.xml
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
version="3.1">
<context-param>
<param-name>spring.profiles.default</param-name>
<param-value>default</param-value>
</context-param>
<servlet>
<servlet-name>ws</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:/spring/ws-context.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
<async-supported>true</async-supported>
</servlet>
<servlet-mapping>
<servlet-name>ws</servlet-name>
<url-pattern>/rest/*</url-pattern>
</servlet-mapping>
<filter>
<filter-name>springSecurityFilterChain</filter-name>
<filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
<async-supported>true</async-supported>
</filter>
<filter-mapping>
<filter-name>springSecurityFilterChain</filter-name>
<url-pattern>/rest/*</url-pattern>
</filter-mapping>
</web-app>
的WebSocket春季
<websocket:message-broker
application-destination-prefix="/app">
<websocket:stomp-endpoint path="/add">
<websocket:sockjs/>
</websocket:stomp-endpoint>
<websocket:simple-broker prefix="/topic, /queue" />
</websocket:message-broker>
URL我在Heroku上的應用程序,所以你可以在你的網頁瀏覽器的控制檯由自己去查。 Link 請參閱更新日誌,這片讓我擔心沒有TransportHandler
CJyb2xlcyI6IkNVU1RPTUVSIn0.wFqNOduN-lD1-9GIRnG1X1aLJZTxtz9c6vmO7jmPPiE2017-04-06T16:23:32.439917+00:00 app[web.1]: 2017-04-06 16:2332 WARN DefaultSockJsService:239 - No TransportHandler for http://myapp-ws.herokuapp.com/rest/add/097/eyocvxic/websocket?jwt=eyJhbGciOiJI
您的日誌無用,查看vegur日誌 - mayge vegur配置不正確並丟棄websocket連接。並且不要禁用websocket,您需要啓用websocket。 – user1516873
我可以在日誌中看到H27錯誤https://devcenter.heroku.com/changelog-items/662,但是什麼都不需要在Heroku上進行更改(原因可能是我有一個免費賬戶而不是付費賬戶)。我還創建了一個Heroku支持團隊的門票來看看這個。 – Lukasz
我將帳戶升級到付費,但它仍然不起作用 – Lukasz