WS Demo

/**
 * @author Q.Wong [2010-12-18]
 * 
 */
@WebService
public class WSDemo {

	@WebMethod
	public String sayHello(String name) {
		return name + " Hello!";
	}

}

 

<?xml version="1.0" encoding="UTF-8"?>
<project name="project" default="default">

    <target name="default">
        <exec executable="wsgen">
        	<arg line="-cp ./bin -keep -s ./src -d ./bin com.qwong.wsdemo.WSDemo" />
        </exec>
    </target>

</project>

 

public class RunService {

	public static void main(String args[]) {
		Endpoint.publish("http://localhost:8080/WSDemo", new WSDemo());
	}

}

 

<?xml version="1.0" encoding="UTF-8"?>
<project name="project" default="default">

    <target name="default">
        <exec executable="wsimport">
        	<arg line="-d src -p com.qwong.wsdemo.client -keep http://localhost:8080/WSDemo?wsdl" />
        </exec>
    </target>

</project>

 

public class TestInvoker {

	@Test
	public void testWSDemo() {
		WSDemoService service = new WSDemoService();
		WSDemo proxy = service.getWSDemoPort();
		System.out.println(proxy.sayHello("Demo"));
	}

}
 
在ESP32平台上测试MQTT协议下的WebSocket客户端通信,需要结合MQTT Broker支持WebSocket传输的能力。以下是具体的测试方法和步骤: ### 配置MQTT Broker支持WebSocket 确保MQTT Broker支持WebSocket协议。例如,EMQX Broker默认在端口8083上提供WebSocket支持。需要在Broker的配置文件中启用WebSocket监听器。例如在EMQX的配置文件中添加如下内容: ```erlang listener.wss.default = 8084 listener.wss.existing = 8083 ``` 此配置启用了WebSocket Secure (WSS) 和普通WebSocket (WS) 监听器[^4]。 ### ESP32代码实现 使用ESP-IDF框架开发ESP32的MQTT WebSocket客户端。首先需要配置MQTT客户端连接参数,指定Broker的IP地址和WebSocket端口(如8083),并设置传输协议为WebSocket: ```c esp_mqtt_client_config_t mqtt_cfg = { .host = "192.168.31.107", // MQTT服务器IP .port = 8083, // WebSocket端口 .event_handle = mqtt_event_handler, .transport = MQTT_TRANSPORT_OVER_WS, // 设置传输协议为WebSocket .username = "admin", .password = "public" }; ``` 此配置启用了WebSocket传输,并指定了MQTT Broker的IP地址和端口[^4]。 ### 测试MQTT WebSocket通信 将代码下载到ESP32开发板,并通过串口监视器观察连接状态。ESP32成功连接到MQTT Broker后,可以尝试发布和订阅MQTT主题。例如,发布一条消息到`/public/01Studio/1`主题: ```c esp_mqtt_client_publish(client, "/public/01Studio/1", "Hello from ESP32", 0, 0, 0); ``` 在MQTT调试助手中订阅相同主题,例如使用在线工具http://www.tongxinmao.com/txm/webmqtt.php#collapseOne,配置连接参数后订阅主题,验证是否能接收到ESP32发布的消息[^3]。 ### 调试WebSocket连接 使用Whistle等工具可以调试WebSocket连接。在Whistle中创建WebSocket代理规则,将ESP32的WebSocket连接转发到Whistle代理,从而捕获和分析WebSocket数据流。通过Whistle的界面查看WebSocket连接的详细信息,包括发送和接收的数据[^2]。 ### 相关问题
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值