使用Sparkjava

时间:2016-11-07 15:24:04

标签: java html forms http-post spark-java

我希望能够发布一个已编制索引数组字段的表单,并从Sparkjava中读取这些字段。基于一些阅读,我发现了一些使用方括号来索引重复字段的建议。这看起来像是一个自动将重复字段解析为数组的php约定。但是我无法弄清楚Sparkjava对这个字段做了什么,它似乎忽略了括号并为我提供了该键的空对象。

由于这很明显是泥,这里有一些代码:

这是我的表格:

<form method="post">
  Array: <input type="text" name="MyArray[1]" /><br>
  Array: <input type="text" name="MyArray[2]" /><br>
  Name: <input type="text" name="name" /><br>
  <button type="submit">Submit</button>
</form>

这是我的表单处理端点:

post("/form", (req, res) -> {
    String data = req.queryMap().toMap().toString();
    return data;
});

当我在表单中输入值并提交时,结果页面会显示:

{name=[Ljava.lang.String;@7ae881bf, MyArray=null}

因此它将name解析为一个键(就像任何无聊的形式一样),但看起来它解析MyArray字段上的尾随[]作为一些特殊结构的指示符,应该将其解析为具体对象。如果我省略索引,它的行为相同,并将两个字段命名为MyArray[]。如果它允许我以MyArray[1]MyArray[2]访问密钥,我会很高兴,但我更愿意了解Sparkjava尝试做什么样的解析魔法,以便我可以利用它。

谢谢!

0 个答案:

没有答案