1、请求参数绑定模式
url参数绑定第一种经典模式
http://localhost:8888/test?page= 1 &age=10
以?分隔url与params以&分隔各参数
url参数绑定第二种rest模式
http://localhost:8888/test/1/10
纯粹以/分隔
2、新建UrlParamsVerticle文件
package vertx;
import io.vertx.core.AbstractVerticle;
import io.vertx.core.Promise;
import io.vertx.ext.web.Router;
public class UrlParamsVerticle extends AbstractVerticle {
//第一步 声明Router
Router router;
@Override
public void start(Promise<Void> startPromise) throws Exception {
//第二步 初始化Router
router = Router.router(vertx);
//第三步 配置Router解析url
/**
* 经典模式
* http://localhost:8888/test?page= 1 &age=10
* 以?分隔url与params以&分隔各参数
*/
router.route("/test").handler(
req -> {
//Vert.x获取请求url参数req.request().getParam()
var page = req.request().getParam("page");
req.response()
.putHeader("content-type", "text/plain")
.end(page);
}
);
/**
* rest模式
* http://localhost:8888/test/1/10
* 纯粹以/分隔
*/
router.route("/test/:page").handler(
req -> {
//Vert.x获取请求url参数req.request().getParam()
var page = req.request().getParam("page");
req.response()
.putHeader("content-type", "text/plain")
.end(page);
}
);
//第四步 将Router与vertx HttpServer 绑定
vertx.createHttpServer().requestHandler(router).listen(8888, http -> {
if (http.succeeded()) {
startPromise.complete();
System.out.println("HTTP server started on port 8888");
} else {
startPromise.fail(http.cause());
}
});
}
}3、访问测试
经典模式

rest模式
