【问题标题】:Rest Call in not working休息呼叫不起作用
【发布时间】:2017-01-13 10:41:49
【问题描述】:

我正在尝试使用一个 rest 调用,它获取文件在 os.s 中的位置。 作为回报,其余调用模拟文件的下载。

下面是代码

<div class="form-container">
        <h1>Welcome to CoinPay</h1>

        Click on below links to download Coin.<br /><br />

         <a href="<c:url value='/download/<%=request.getParameter("dest") %>' />">Coin Mobile
            Application</a>


    </div>

在参数"dest" 中的值为D:/coinFiles/Coin-v1.1.8.apk。

下面给出其余调用定义

@RequestMapping(value="/download/{dest}", method = RequestMethod.GET)
    public void downloadFile(HttpServletResponse response, @PathVariable("dest") String dest) throws IOException {
}

由于某种原因,href 创建的链接无法访问其余调用。

我该怎么做。任何帮助表示赞赏。 提前谢谢你。

【问题讨论】:

    标签: java rest jsp jstl scriptlet


    【解决方案1】:

    如果你想创建像/download?dest=testDest 这样的链接,你可以使用&lt;c:param&gt;。

    <c:url value="/download" var="myURL">
       <c:param name="dest" value="${dest}" />
    </c:url>
    
    <a href="${myURL}" />${myURL}</a>
    

    请更换你的控制器。@RequestParam

    @RequestMapping(value="/download", method = RequestMethod.GET)
    public void downloadFile(HttpServletResponse response,@RequestParam("dest") String dest) {
         .......
    }
    

    【讨论】:

      【解决方案2】:

      由于您的 dest 变量在其值中有正斜杠,所以首先您需要使用这样的注释在路径参数中启用斜杠

      @RequestMapping(value = { "download/{dest:.+}" })
      

      【讨论】:

      • 感谢您的回答,但它对我不起作用
      猜你喜欢
      • 2011-10-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-04-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多