更新时间:2022-11-18 22:04:30
我找到了错误的来源
FormData()
-它会处理文件和隐藏字段.Content-Type
.当我这样做时,表单边界丢失了:FormData()
- it takes care of the file and hidden fields.Content-Type
. Form boundaries were lost when I did this:`xhr.setRequestHeader("Content-Type","multipart/form-data")
`xhr.setRequestHeader("Content-Type", "multipart/form-data")
更正后的代码在下面(以及某些上下文):
The corrected code is below (along with some context):
app.ports.uploadFile.subscribe(function(pathAndId){
var [tasksrvPath, formId] = pathAndId
try {
var fd = new FormData(document.getElementById(formId));
var r = new XMLHttpRequest()
r.open("POST", tasksrvPath, true)
r.setRequestHeader("Authorization", "Bearer " + token() )
r.send(fd)
r.onload = function() {
app.ports.status.send(r.statusText)
}
} catch(e) {
console.log(e.message);
}
})