在Camel Rest中如何处理在路径参数中有斜杠的请求

时间:2017-06-15 08:28:34

标签: java rest url encoding apache-camel

我正在创建一个类似/temp/{db}/{token}

的网址

这里在令牌中我有正斜杠我已经搜索并使用URLEncoder对其进行编码,它正在将正斜杠转换为%2F但是由于斜线我仍然得到错误的请求错误。

我也试过了/temp/{db}/{+token}/temp/{db}/{token:.+},但它没有用于骆驼。

1 个答案:

答案 0 :(得分:1)

实际上,根据URI

,您无法达到预期效果

解决方案:使用名为token的参数

@RequestMapping("/temp/{db}")
    @ResponseBody
    Object temp(@PathVariable("db") String db, @RequestParam ("token") String token) {
        return  db+token;
    }

<强>用法: 网址:http://localhost:8080/temp/db?token=%2Fthis%20is%20my%20token

输出: db/this is my token