【问题标题】:WSO2 ESB 5.0.0 BETA WebSocket InboundEndPointWSO2 ESB 5.0.0 BETA WebSocket InboundEndPoint
【发布时间】:2016-07-28 16:50:07
【问题描述】:

我正在测试 wso2 esb 5.0.0 的 beta 版本,它有一个对我来说很有趣的功能,websockets。

我声明了入站端点,就像文档定义 (https://docs.wso2.com/display/ESB500/WebSocket+Inbound+Protocol) 一样,但我只能从我的客户端接收空消息(连接完成),我无法向我的客户端发送任何消息.

有人尝试过这个功能吗?

谢谢。

PD:这是我的 ws 入站点

<inboundEndpoint name="testws" onError="errorsq" protocol="ws"
    sequence="testwssq" suspend="false">
    <parameters>
        <parameter name="inbound.ws.port">9091</parameter>
        <parameter name="ws.outflow.dispatch.sequence">testbesq</parameter>
        <parameter name="ws.outflow.dispatch.fault.sequence">errorsq</parameter>
        <parameter name="ws.client.side.broadcast.level">1</parameter>
    </parameters>
</inboundEndpoint>

这些是我的序列

 <sequence name="testbesq">
    <log level="full"/>
</sequence>
<sequence name="testwssq">
    <log level="full"/>
    <log level="custom">
        <property name="request" value="message receive"/>
    </log>
</sequence>

【问题讨论】:

    标签: wso2esb


    【解决方案1】:

    与 HTTP 不同,它是一个应用程序级协议,在 WebSocket 协议中,传入消息中没有足够的信息来处理这些消息,这些消息要么是文本,要么是二进制低级帧。因此,我们必须在 WebSocket 上定义一些自定义子协议。这将允许客户端和服务器方知道他们通信的帧的内容类型。

    默认情况下,每个入站端点都支持遵循 Synapse 子协议。

    synapse(contentType='application/json')
    synapse(contentType='application/xml')
    synapse(contentType='text/xml')
    

    我使用 Netty WebSocket 客户端和下面的命令来测试这个。一旦客户端连接(握手),我输入消息&lt;Test&gt;message&lt;/Test&gt;,我可以在 websocket 客户端看到后端响应。

    java -DsubProtocol="synapse(contentType='application/xml')" -DclientPort=9091 -cp netty-example-4.0.30.Final.jar:lib/*:. io.netty.example.http.websocketx.client.WebSocketClient
    

    【讨论】:

    • 嗨 Chaminda,你能从 wso2esb 向外部 websocket 客户端发送消息吗?我们定义了流出调度序列,但我们不知道在这个序列中是否必须设置端点或类似的东西,因为我们无法从 wso2esb 发送消息。
    • 嗨乔希,我可以从 wso2esb 发送消息。你把 -DsubProtocol="synapse(contentType='application/xml')" 参数放在上面提到了吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-03-15
    • 1970-01-01
    • 1970-01-01
    • 2017-11-19
    • 2017-01-18
    • 2019-01-07
    • 1970-01-01
    相关资源
    最近更新 更多