我有一个用于从我的服务器下载文件的链接。该链接将 svg (xml) 作为参数传递。服务器使用此 xml 创建一个 jpeg 并将其传递回视图以启动下载。
问题是在 IE 中,由于 url 大小的限制,只有一部分 xml 被传递。它在 Firefox 和 Chrome 中完美运行(必须有更大的 url 限制)。
正在传递的 xml 来自 javascript,所以我需要在客户端动态更新链接:html:
<g:link class="button" action="testImage" id="my-link"><input type="button" value="PDF" class="invisible"/></g:link>
JS:
svgXML = "<svg ......</svg>" //can get very long
document.location.href= '${createLink(controller: 'imageCreater' , action:'downloadJPEG')}?svg='+svgXML;
有没有办法绕过这种方法?我不能使用 ajax,因为它需要一个插件在它被传递到视图后启动下载。由于要求我不能使用这个插件。我在某处读到 POST 请求对参数大小没有限制。有没有办法将我的链接更改为 POST 而不是 GET 请求?