我正在尝试使用一个休息调用,它接受os中的文件位置。 作为回报,其余的呼叫模拟文件的下载。
贝娄是代码
<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
创建的链接无法访问其余的来电。
我该怎么办?任何帮助表示赞赏。 提前谢谢。
答案 0 :(得分:1)
由于您的dest
变量的值具有正斜杠,因此首先需要使用这样的注释在路径参数中启用斜杠
@RequestMapping(value = { "download/{dest:.+}" })
答案 1 :(得分:1)
如果您想创建/download?dest=testDest
之类的链接,可以使用<c:param>
。
<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) {
.......
}