提问人:Mehadi Hasan 提问时间:10/19/2023 更新时间:10/19/2023 访问量:35
无法从 URL 下载文件。服务器违反了协议。Section=ResponseHeader Detail=Content-Length 标头值无效
Failed to download file from the URL. The server committed a protocol violation. Section=ResponseHeader Detail=Content-Length header value is invalid
问:
我在使用桌面浏览器时遇到了从特定 URL 下载文件的问题,而它在移动设备(Chrome 浏览器)上可以完美运行。我已经在多个桌面浏览器中对此进行了彻底测试并清除了缓存,但我仍然无法找出导致问题的原因。
当我在桌面浏览器中单击该链接时,我收到以下错误消息:
発行エラー: Failed to download file from the URL [https://example.com/7075626c6963/SmaPri/Label.spfmtz]. (The server committed a protocol violation. Section=ResponseHeader Detail='Content-Length' header value is invalid)
我在下面提供了负责此操作的 JavaScript 代码。通过调用 requestOutput() 函数下载文件。代码如下:
function requestOutput() {
var param1 = "__format_archive_url=" + encodeURIComponent('https://example.com/7075626c6963/SmaPri/Label.spfmtz');
var param2 = "__format_id_number=2";
var param3 = encodeURIComponent("Z.TanaBango") + "=" + encodeURIComponent("F1-1015") + "&" + encodeURIComponent("Barcode1") + "=" + encodeURIComponent("AXR12452") + "&" + encodeURIComponent("(Print quantity)") + "=" + encodeURIComponent(1);
var url = "http://localhost:8080/Format/Print?" + param1 + "&" + param2 + "&" + param3;
transaction(url, ResPrint);
}
function ResPrint() {
if (xmlhttp.readyState == 4) {
if (xmlhttp.status == 200) {
var xmlDoc = xmlhttp.responseXML;
var result = xmlDoc.getElementsByTagName('result')[0].childNodes[0].nodeValue;
var message = xmlDoc.getElementsByTagName('message')[0].childNodes[0].nodeValue;
if (result == "OK") {
// OK
} else {
// NG
}
} else {
// Error
}
}
}
function transaction(url, method) {
xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = method;
xmlhttp.open("GET", url, false);
xmlhttp.send();
}
我已经在多个浏览器(windows、ubuntu18.04 LTS)中进行了测试,清除缓存不起作用。
答: 暂无答案
评论