我正在使用动态Web在响应js中的应用。在用户扫描文档之后,本地保存文件可以正常工作,但我不知道要从动态Web向服务器发送什么样的文档数据。
我试过这个,
这是我的保存按钮逻辑。
const saveOrUploadImage = (_type) => {
if (_type !== "local" && _type !== "server") return;
let fileName = saveFileName + "." + saveFileFormat;
let imagesToUpload = [];
let fileType = 0;
let onSuccess = () => {
setSaveFileName((new Date()).getTime().toString());
imagesToUpload.push(props.buffer.current);
_type === "local" ? props.handleOutPutMessage(fileName + " saved successfully!", "important") : props.handleOutPutMessage(fileName + " uploaded successfully!", "important");
};
let onFailure = (errorCode, errorString, httpResponse) => {
(httpResponse && httpResponse !== "") ? props.handleOutPutMessage(httpResponse, "httpResponse") : props.handleException({ code: errorCode, message: errorString });
};
if (bMulti) {
if (props.selected.length === 1 || props.selected.length === props.buffer.count) {
if (_type === "local") {
switch (saveFileFormat) {
default: break;
case "tif": DWObject.SaveAllAsMultiPageTIFF(fileName, onSuccess, onFailure); break;
case "pdf": DWObject.SaveAllAsPDF(fileName, onSuccess, onFailure); break;
}
}
else {
for (let i = 0; i < props.buffer.count; i++)
imagesToUpload.push(i);
}
} else {
if (_type === "local") {
switch (saveFileFormat) {
default: break;
case "tif": DWObject.SaveSelectedImagesAsMultiPageTIFF(fileName, onSuccess, onFailure); break;
case "pdf": {
DWObject.SaveAsPDF(fileName, props.buffer.current, onSuccess, onFailure)
console.log('GetImageURL', Dynamsoft.DWT.GetImageURL(props.buffer.current));
console.log("DWObject.SaveAllAsPDF()---", DWObject.SaveAllAsPDF(fileName, props.buffer.current, onSuccess, onFailure));
console.log("DWObject---", DWObject);
DWObject.SaveSelectedImagesAsMultiPagePDF(fileName, onSuccess, onFailure)
}; break;
}
}
else {
imagesToUpload = props.selected;
}
}
} else {
if (_type === "local") {
switch (saveFileFormat) {
default: break;
case "bmp": DWObject.SaveAsBMP(fileName, props.buffer.current, onSuccess, onFailure); break;
case "jpg": DWObject.SaveAsJPEG(fileName, props.buffer.current, onSuccess, onFailure); break;
case "tif": DWObject.SaveAsTIFF(fileName, props.buffer.current, onSuccess, onFailure); break;
case "png": DWObject.SaveAsPNG(fileName, props.buffer.current, onSuccess, onFailure); break;
case "pdf": {
DWObject.SaveAsPDF(fileName, props.buffer.current, onSuccess, onFailure)
}; break;
}
imagesToUpload.push(props.buffer.current);
console.log("props.buffer.current", props.buffer.current); //0
}
}
for (let o in Dynamsoft.DWT.EnumDWT_ImageType) {
if (o.toLowerCase().indexOf(saveFileFormat) !== -1 && Dynamsoft.DWT.EnumDWT_ImageType[o] < 7) {
fileType = Dynamsoft.DWT.EnumDWT_ImageType[o];
break;
}
}
}我正在跟踪这个GitHub存储库。GitHub链路
如果你知道这个问题的答案,请告诉我该怎么做。
发布于 2022-11-01 08:50:03
上载文件的步骤:
除了文件上传器之外,您还可以调用HTTPUpload()方法:
DWObject.HTTPUpload(serverUrl, imagesToUpload, fileType, Dynamsoft.DWT.EnumDWT_UploadDataFormat.Binary, fileName, onSuccess, onFailure);https://stackoverflow.com/questions/74219525
复制相似问题