如何在 websocket onopen 事件中访问 spring mvc 属性值?

Posted

技术标签:

【中文标题】如何在 websocket onopen 事件中访问 spring mvc 属性值?【英文标题】:How to access spring mvc properties value in websocket onopen event? 【发布时间】:2015-02-09 09:36:35 【问题描述】:

我正在使用spring mvc + websocket。我创建了application.properties 来存储项目的配置数据。现在我想在 websockets @onOpent() 事件中使用该属性值。我可以在简单的休息控制器@RequestMapping() 中访问这些属性,但不幸的是我无法在 websockets @onOpent() 事件中访问这些属性,我得到了相同的null 值。我怎样才能做到这一点?

【问题讨论】:

【参考方案1】:

这是因为 Websocket 服务器类不在 Spring 组件中。 您可以使用类上的 @Component 注释将 websocket 处理程序类标记为组件。然后,您将能够访问属性。 希望对您有所帮助。

【讨论】:

它仍然给我空值!【参考方案2】:

似乎您正在使用 Java websockets。您可以使用 spring 4 websockets here 是示例

【讨论】:

是的,我正在使用 java websockets。 Spring 4 websockets 是我的选择之一,但由于某种原因,我不得不为我的系统选择 pure java websockets 并且必须继续使用相同的方法。

以上是关于如何在 websocket onopen 事件中访问 spring mvc 属性值?的主要内容,如果未能解决你的问题,请参考以下文章

Websocket 服务器问题:onOpen 命中客户端,但服务器 websocket 处理程序 OnOpen 和其他事件从未命中

Javascript - WebSocket OnOpen 事件未触发

Rails WebSocket 客户端永远不会触发 OnOpen

斑点 WebSockets

websocket的对象事件处理函数参数的使用

Java websocket在onOpen函数中获取自定义标头