在项目中需要下载文件,由于js不能保存二进制流,所以只能使用请求链接的方式
var $eleForm = $("<form method='get' hidden ></form>");
$eleForm.attr("action",url);
$(document.body).append($eleForm);
$eleForm.submit();
$eleForm.remove();
以上是网络流传版本,除此之外还有其他a标签的版本,就不在赘述
现在我需要传递一个id参数,由于参数不是很多,而且也不是很重要,所以打算使用get请求
$eleForm.attr("action",url+"?id="+id);
设置了action但是服务器却获取不到id,一直都为null
一开始以为是服务器问题,但是使用浏览器直接get请求后台是能获取的
但是在html页面打印了id是正常的id
后来使用了多种方法后台都不能获取到参数
window.open(url)
window.location.href=url
最后是使用了下面这种方式就可以传递了
url+"?id="+id+""
不知道为啥必须在后面增加一个空串就可以,单独就会传不过去