我正在尝试将图像发送到要处理的API,问题是我需要发送由PC网络摄像头捕获的图像,
imageCapture.takePhoto().then(function (blob) {
var imagen = new File([blob], "name",{type:"image/jpeg"});
fileUpload[0] = imagen;
});
这就是将图片保留在变量中的方式,因此我将其发送到API:
var formData = new FormData();
formData.append('files', fileUpload[0]);
var obj = {};
var res = "";
var oControl = this.getView().byId("txtArea");
$.ajax("/service/models/personas/versions/2", {
type: "POST",
data: formData,
cache: false,
headers: {
"Authorization": "Bearer " + token
},
但是出现以下错误:
上传文件时出错::无效的文件类型
在与Postman发送具有相同“ jpeg”格式的图像之前,我已经使用过它,并且它可以工作,那么我在做什么错了?
希望您能帮助我,谢谢。
答案 0 :(得分:0)
没有这样的标头,称为type
。代替{type:"image/jpeg"}
,您需要{Content-Type:"image/jpeg"}
,它是适当的HTTP标头。由于邮递员不处理您的数据,因此找不到错误。
答案 1 :(得分:0)
$("#btnUploadDoc").click(function (e) {
e.preventDefault();
var formData = new FormData();
var opmlFile = $('#file1').get(0).files;
formData.append(Name, opmlFile[0]);
$.ajax({
url: "/service/models/personas/versions/2",
type: 'POST',
data: formData,
cache: false,
contentType: false,
processData: false,
dataType: 'json',
success: function (data) {
alert(data.msg);
}
});
});