我想在我的API中访问多个不同类型的主体参数,以便在我的POST路由中使用,但我不知道如何在Javalin中访问主体参数。我还没有在文档中找到任何关于身体参数或Javalin中的最佳POST实践的信息。我能找到的最接近的东西是:
ctx.body() // get body as string (consumes underlying request body if not cached)
ctx.bodyAsBytes() // get body as bytes (consumes underlying request body if not cached)
ctx.bodyAsClass(class) // get body as class (consumes underlying request body if not cached)
ctx.bodyValidator(class) // get typed validator for body (consumes underlying body request if not cached)有人能给我指个方向吗?Javalin甚至支持body参数吗?
发布于 2021-07-03 06:12:54
基本的ctx.body()方法将允许您以字符串形式访问表单数据:
fieldOne=valueOne&fieldTwo=valueTwo&...这可能很难处理-但也可以选择将表单数据直接读取到bean中:ctx.bodyAsClass(class)。如果需要验证,那么可以使用ctx.bodyValidator(class)。
或者,也许更方便的是,您可以使用:
ctx.formParamMap()这为您提供了所有表单数据的链接哈希图。您可以使用此方法遍历所有提交的字段。
还有一些相关的方法:
ctx.formParam(name)返回一个字段的字符串值(如果相关字段可以有多个值,则使用表单域的name)ctx.formParams(name)获取值列表,如多选下拉列表或一个表单域的一组相关复选框,依此类推。如果这些都不起作用,那么我认为你可能需要用一些示例代码来告诉我们你到底在哪里卡住了。
https://stackoverflow.com/questions/68231113
复制相似问题