http扩展接口
quickmsg
# 注解使用
使用@Router(value = "/smqtt/publish", type = HttpType.POST) 定义URL跟请求方式
# 自定义实现接口
- 实现io.github.quickmsg.common.http.HttpActor
- 实现io.github.quickmsg.core.http.AbstractHttpActor(内置操作发送mqtt消息接口)
# 下面给出实现demo:
定义一个url为/smqtt/demo的post请求,并且设置Response Header,同时允许跨域。
@Router(value = "/smqtt/demo", type = HttpType.POST)
@Slf4j
@Header(key = "Content-Type", value = "application/json")
@AllowCors
public class DemoActor extends AbstractHttpActor {
@Override
public Publisher<Void> doRequest(HttpServerRequest request, HttpServerResponse response, Configuration configuration) {
return request
.receive()
.asString()
.map(this.toJson(HttpPublishMessage.class))
.doOnNext(message -> {
//处理request
}).then(response.sendString(Mono.just("success")).then());
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# SPI注入
具体参考java SPI注入
resources/META-INF/services 目录下新建 名为io.github.quickmsg.common.http.HttpActor文件, 将自定义实现类全限定名写入文件中即可完成注入。