在HTML页面上,单击图像(“ img”)或锚点(“ a”)标记的链接时,我想为GET请求添加自定义标头。这些链接通常用于下载动态内容。这些标头可以是SAML标头,也可以是自定义应用程序专用标头。是否可以通过JavaScript添加这些自定义标头?或者,如果我通过XMLHttpRequest添加它们,如何实现下载功能?此要求仅适用于IE6或7。
3 回答
当年话下
TA贡献1890条经验 获得超9个赞
如果您使用XHR,那么setRequestHeader应该可以工作,例如
xhr.setRequestHeader('custom-header', 'value');
PS:您应该使用Hijax来修改锚点的行为,以便在出于某些原因AJAX无法为您的客户使用(例如页面上其他位置的无效脚本)时起作用。
千巷猫影
TA贡献1829条经验 获得超7个赞
从浏览器内部向请求添加标头的唯一方法是使用XmlHttpRequest setRequestHeader方法。
将其与“ GET”请求一起使用将下载资源。然后,诀窍就是以预期的方式访问资源。表面上,您应该应该允许GET响应在短时间内可缓存,因此导航到新URL或使用src url创建IMG标签应使用先前“ GET”的缓存响应。但是,这很有可能会失败,尤其是在IE中,这在涉及高速缓存的地方可能是个法律定律。
最终,我同意Mehrdad的观点,使用查询字符串是最简单,最可靠的方法。
另一个古怪的选择是使用XHR向URL发出请求,以表明您打算访问资源。它可以使用会话cookie进行响应,该会话cookie将由对图像或链接的后续请求携带。
添加回答
举报
0/150
提交
取消