当前位置: 首页 > 知识库问答 >
问题:

Http服务器(Vertx上的Java)未获取POST参数

郎灿
2023-03-14
<!DOCTYPE html>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.4/jquery.min.js"></script>
<script>
$(document).ready(function() {
        $.ajax({
        url: "http://192.168.1.74:8888",

        type: "POST",
        data: ({username: 'Bobby'})

    });
})
</script>
</head>
<body>
</body>
</html>
public class Main extends AbstractVerticle {


  @Override
  public void start() throws Exception {


       vertx.createHttpServer().requestHandler(new Handler<HttpServerRequest>() {
        @Override
        public void handle(HttpServerRequest request) {

          System.out.println(request.getParam("username"));    

        }
    }).listen(8888);

  }
}

共有1个答案

宇文和同
2023-03-14

我在做我的项目时遇到了这个问题。我在客户端使用Dojo。我通过在客户端和服务器端进行调整来解决这个问题。

客户:

var json = JSON.stringify({
    "username": "Bobby"
}); 
request.post("yoururl", {
    data: json,
    headers: {
       "Content-Type": "application/javascript"
    }
});

在服务器端,显然需要在处理代码之前调用bodyHandler.create()方法。

router.route(HttpMethod.POST, "yoururl").handler(BodyHandler.create());
router.route(HttpMethod.POST, "yoururl").handler(routingContext -> 
{    
    String sectionType = routingContext.request().getParam("sectionId");
    JsonObject j = routingContext.getBodyAsJson();
});
 类似资料:
  • 我有一个Lambda POST函数,我要发送一个json体进行测试,如: 但我不知道如何在我的代码上读懂那具尸体。 最初我有一个GET API,我使用以下命令调用该API:

  • 我有以下电话: 和以下路线: 我试图在'//get Hello'上获取名为'Hello'的参数。我尝试使用req.params,但它返回{}。 调用是否有问题,或者如何获取hello参数?提前谢谢

  • 问题内容: 我想在本地实现Java HTTP服务器,这意味着服务器计算机将由我控制。我预计将不超过20个客户端向其发送请求。我想知道如何去做: 我应该使用像Apache Tomcat这样的J2EE servlet容器吗? 我可以使用J2SE类并使用它们来构建它吗? 有没有其他选择? 您的经验表明什么? 问题答案: Sun 1.6 JRE中嵌入了一个简单的HTTP服务器。它不兼容JavaEE或ser

  • 我在第三方服务器上有一个在线表单,提交数据使用标准的HTTP POST请求发送到我的Cold融合页面。我需要在. cfm页面中检索表单数据并插入到数据库中。我使用requestcatcher.com,我可以看到下面的帖子请求数据格式: POST /testHTTP/1.1主机:mytest.requestcatcher.com连接:保持-存活内容-长度:1198内容-类型:多部分/表单-数据;边界

  • 他们在vertx网站上的文档不太清楚如何接收请求的正文。 我得到错误: 如果他们甚至不把它放在他们的文件里,我怎么知道该怎么称呼它...

  • 我必须实现一个Vertx POST请求。通过Postman,请求如下图所示: 棘手的是,服务器需要主体的密钥“upgrade\u file”。我找不到如何使用Vertx实现这一点。这就是我目前的情况: 如何将“upgrade_file”设置为身体的关键?