1
Ich habe versucht, HTML-Formulardaten an ein Java Vertex Verticle zu senden, aber ich bekomme null
als Wert.Vertx: Daten von HTML nach Java senden
Hier ist mein Code:
public void start(Future<Void> startFuture) throws Exception {
Router router = Router.router(vertx);
router.route("/html/*").handler(StaticHandler.create().setWebRoot("html/"));
router.route("/html/*").handler(StaticHandler.create().setWebRoot("web/html"));
router.route("/js/*").handler(StaticHandler.create().setWebRoot("web/js"));
router.route("/css/*").handler(StaticHandler.create().setWebRoot("web/css"));
router.route("/fonts/*").handler(StaticHandler.create().setWebRoot("web/fonts"));
Route route = router.route(HttpMethod.POST, "/crypt/testForm/");
route.handler(routingContext -> {
String productType = routingContext.request().getParam("test");
System.out.println(productType);
});
vertx.createHttpServer()
.requestHandler(router::accept)
.listen(8085, "localhost", res -> {
if (res.succeeded()) {
startFuture.complete();
} else {
startFuture.fail(res.cause());
}
});
}
Und für meine HTML-Datei:
<form action="/crypt/testForm" method="post">
<input type ="text" id="test" name ="test"/>
<input type="submit"/>
</form>
Grüße.
Es ist ein [einfaches Beispiel] (https://github.com/vert-x3/vertx-examples/blob/master/web-examples /src/main/java/io/vertx/example/web/form/Server.java) mit einem ähnlichen Anwendungsfall wie Ihres. Vielleicht hilft das. – alexvetter
Danke @alexvetter Ich vergesse, router.route() hinzuzufügen. Handler (BodyHandler.create()); – zackzulg
Sie sollten eine Antwort hinzufügen und sie als die richtige Antwort auf Ihr Problem markieren. – alexvetter