【问题标题】:How to properly index path in @RequestMapping which is a path for JsonNodeTree?如何在 @RequestMapping 中正确索引路径,这是 JsonNodeTree 的路径?
【发布时间】:2020-03-19 02:24:20
【问题描述】:

我有一个看起来像这样的@RequestMapping "@RequestMapping("/text/{id_no}/{tempath}**")" 其中 tempath 是文件在 JsonNodeTree 中的位置,我在下面使用它作为

String path = "/" + tempath.toString();
return jsonNode.at(path).asText();".

当我只有一个像 "/text/5012394/time" 这样的路径实例时,它工作得非常好,但是当我尝试放置一个看起来像这样 ("/text/5012394/timezones/0/time") 的路径时,它会显示错误,其中 /timezones 是一个 Object/ JsonNode 中包含更多元素的数组。我的观点是,当我将整数放入路径时,错误就会出现,并且应用程序不知道如何处理它,我尝试使用 .toString(); 解决它。但没有运气。

有没有人想办法解决这个问题?

【问题讨论】:

  • 您能帮我们处理您遇到的错误的堆栈跟踪吗?
  • 您收到错误,因为模板中有 /。请求映射将无法识别资源路径与模板差异。发送编码模板,然后解码使用。
  • @SantosshKumhar “Whitelabel 错误页面此应用程序没有显式映射 /error,因此您将此视为后备。2019 年 11 月 23 日星期六 15:47:28 CET 出现意外错误(类型=Not Found, status=404). No message available" ,从浏览器访问时出现 Whitelabel 错误,但在 Eclipse 中未显示错误。
  • @JUser 知道在这种情况下我该如何实现吗?

标签: java json spring spring-boot microservices


【解决方案1】:

正如我所说,您收到错误是因为您在模板中有 /。请求映射将无法识别资源路径与模板差异。发送编码模板,然后对其进行解码以供使用。 解决它的一种方法是对模板进行 base 64 编码,然后在阅读模板之前对其进行解码

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-11
    • 2012-03-27
    • 2011-03-06
    • 1970-01-01
    相关资源
    最近更新 更多