我想在Spring Boot应用程序中使用java websocket API。 我创建了以下类,如下所述: https://www.baeldung.com/java-websockets
import javax.websocket.*;
import javax.websocket.server.ServerEndpoint;
import java.io.IOException;
@ServerEndpoint(value = "/test")
public class FrontendEndpoint {
@OnOpen
public void onOpen(Session session) throws IOException {
session.getBasicRemote().sendText("Test");
}
@OnMessage
public void onMessage(Session session, String message) throws IOException {
}
@OnClose
public void onClose(Session session) throws IOException {
}
@OnError
public void onError(Session session, Throwable throwable) {
}
}
我尝试连接到该网络套接字,但是什么也没发生。我在互联网上看到很多文章,但没有任何帮助。我不知道如何使它工作。
当我尝试连接到网络套接字时,什么也没发生。
Spring Boot版本:2.0.3
Websocket-API版本:1.1
我也看不到websocket的开放端口。
谢谢
BR
答案 0 :(得分:1)
我曾经使用Spring Boot和Websocket API创建了一个示例应用程序
https://github.com/simasch/spring-boot-websocket
但是问题是ServerEndpoint不是由Spring管理,而是由Websocket实现管理。因此,这可能不是您应该在Spring Boot中使用websockets的方式。
我建议看看Spring如何认为应该使用Websockets: https://docs.spring.io/spring/docs/current/spring-framework-reference/web.html#websocket
答案 1 :(得分:0)
有点晚了,但是万一有人来这里寻求解决方案。
Spring文档中没有介绍如何在Spring中使用Java WebSocket API(JSR-356),尽管我花了数小时的时间来研究它,但我没有找到任何描述如何实现它的教程。
为了在Spring中使用Java WebSocket API,您应该使用org.springframework.web.socket.server.standard.SpringConfigurator类: https://docs.spring.io/spring/docs/current/javadoc-api/index.html?org/springframework/web/socket/server/standard/SpringConfigurator.html 来自
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-websocket</artifactId>
<version>...</version>
</dependency>
只需将其添加到您的
@ServerEndpoint(... configurator = SpringConfigurator.class)
就完成了。带注释的类将成为由@Autowired注入合法的通常由Spring管理的组件,依此类推。
希望它对某人有帮助:)
答案 2 :(得分:0)
如果您想在Spring Boot应用程序中使用java websocket API,则必须将其添加到spring配置中
const mongoose = require("mongoose");
const ReviewSchema = new mongoose.Schema({
review: {
type: String,
required:[true, "Review is required."],
minlength:[10, "Your Review must be 2 characters or longer."],
maxlength:[600, "Your Review is limited to 25 characters or less."]
}
movieId: {
type: mongoose.Types.ObjectId,
ref: "Movie"
}
},{timestamps:true})
const Review= mongoose.model("Review",ReviewSchema );
module.exports = Review;
这里是完整的article。