文件上传

FileUploader 是一个独立的模块,用于处理文件的上传。它与Dynamic Web TWAIN 14.0版一起发布。 一旦上传作业开始,它就不再依赖于Dynamic Web TWAIN,这意味着即使在您关闭浏览器之后上传也会继续。要上传的文件/数据在上传之前临时存储在本地磁盘上(通常位于C:\Windows\SysWOW64\Dynamsoft\DynamsoftService\upload),在上传完成后或Dynamsoft Service重新启动后自动清除。

方法 属性 事件
Init() ServerUrl OnUploadTransferPercentage
CreateJob() HttpHeader OnRunSuccess
Run() SourceValue OnRunFailure
Cancel()
CancelAllUpload()
GenerateURLForUploadData()

示例代码

以下示例代码演示了如何使用上面的API进行文件上传操作。

var fileUploaderManager;

function onInitSuccess(objFileUploader) {
    fileUploaderManager = objFileUploader;
}

function onInitFailure(errorCode, errorString) {
    alert('Init failed: ' + errorString);
};

Dynamsoft.FileUploader.Init("", onInitSuccess, onInitFailure);

function UploadFile() {
    var job = fileUploaderManager.CreateJob();
    job.ServerUrl ='http://yourserver/youractionpage.aspx';
    job.FileName = "sample.jpg";
    job.ImageType = EnumDWT_ImageType.IT_JPG;
    job.SourceValue.Add(DWObject.GenerateURLForUploadData([0],EnumDWT_ImageType.IT_JPG), "sample.jpg");
    job.OnUploadTransferPercentage = FileUpload_OnUploadTransferPercentage;
    job.OnRunSuccess = FileUpload_OnRunSuccess;
    job.OnRunFailure = FileUpload_OnRunFailure;
    fileUploaderManager.Run(job);
}

function FileUpload_OnUploadTransferPercentage(job, sPercentage) {
    console.log(sPercentage);
}

function FileUpload_OnRunFailure(job, errorCode, errorString) {
    alert(errorString);
}

function FileUpload_OnRunSuccess(job) {
    alert(' upload completed! ');
}

方法

Init()
这是一个启动FileUploader模块的全局API。
语法 Dynamsoft.FileUploader.Init(remoteFile, asyncSuccessFunc, asyncFailureFunc);
参数 String remoteFile: 一个URL,用来指定服务器上FileUploader库的路径。在v14.0中,库与Dynamic Web TWAIN的核心扫描模块一起安装,因此您可以将此参数设置为空字符串。
<OnSuccess function> asyncSuccessFunc:启动成功时触发回调函数,此函数有一个原始参数,该参数引用启动好的UploadManager对象。
<OnFailure function> asyncFailureFunc:启动失败时触发回调函数。如果未安装FileUploader库(.dll)或安装的文件是不同的版本,Init将尝试从remoteFile指定的路径下载并安装这个库。如果失败,则触发此回调函数。
请参考函数原型 成功回调 或者 失败回调
返回值 Boolean
示例代码
var dsUploadManager; Dynamsoft.FileUploader.Init('', 
function(obj) { dsUploadManager = obj;}, function(){});
使用说明
版本信息 v14.0+
CreateJob()
创建一个上传作业。
语法 .CreateJob();
参数
返回值 Object 一个作业对象。例如:{HttpHeader:{},documents:Array(0),Version:"1.0",HttpVersion:"1.1",ServerUrl:"",...}
示例代码
var job = dsUploadManager.CreateJob();
使用说明
版本信息 v14.0+
Run()
开始执行上传作业。
语法 .Run(obj);
参数 Object obj:一个作业对象。
返回值 Boolean
示例代码
var job = dsUploadManager.CreateJob();
dsUploadManager.Run(job);
使用说明
版本信息 v14.0+
Cancel()
取消一个已经开始但未完成的上传作业。通常,是在OnUploadTransferPercentage事件中调用这个方法。
语法 .Cancel(obj);
参数 Object obj: 一个作业对象。
返回值 Boolean
示例代码
var job = dsUploadManager.CreateJob();
job.OnUploadTransferPercentage= FileUpload_OnUploadTransferPercentage;
dsUploadManager.Run(job);
function FileUpload_OnUploadTransferPercentage(job, iPercentage)
{    
    console.log('job cancelled!')
    dsUploadManager.Cancel(job);
}
使用说明
版本信息 v14.0+
CancelAllUpload()
取消所有上传作业。
语法 .CancelAllUpload();
参数
返回值 Boolean
示例代码
dsUploadManager.CancelAllUpload();
使用说明
版本信息 v14.0+
GenerateURLForUploadData()
生成一个URL,上传模块将使用该URL来获取要上传的文件/数据。
语法 DWObject.GenerateURLForUploadData(indices, enumImageType, asyncSuccessFunc, asyncFailureFunc);
参数 Number indices: 缓冲区中图像的索引。该索引从0开始。
EnumDWT_ImageType enumImageType:您希望上传图像的格式。
<OnSuccess function> asyncSuccessFunc: 操作成功时触发的回调函数。
<OnFailure function> asyncFailureFunc: 操作失败时触发的回调函数。
请参考函数原型 成功回调 或者 失败回调
返回值 String 上传模块要上传的文件/数据的URL。
示例代码
Dynamsoft.FileUploader.Init('', function(obj){dsUploadManager=obj}, function(){});
var retAsyn = DWObject.GenerateURLForUploadData([0,1], EnumDWT_ImageType.IT_PDF, 
    function(){console.log('success!');}, function(){});
var serverurl= "https://yoursite/yourserverurl.aspx";
var jobtemp = dsUploadManager.CreateJob();
jobtemp.ServerUrl = serverUrl;
jobtemp.SourceValue.Add(retAsyn, "uploadedFile.pdf");
dsUploadManager.Run(jobtemp);
使用说明 只在HTML5 Edition可用,且14.0版本只支持Windows。
版本信息 v14.0+

属性

ServerUrl
指定上传作业的HTTP Post请求的目标。这通常是服务器上的文件。例如: job.ServerUrl = 'http://www.dynamsoft.com/ScanAndUpload/Actions/SaveToFile.aspx';
类型 String
访问权限 Get Set
使用说明
版本信息 v14.0
HttpHeader
指定上传作业的HTTP Post请求中的标头。例如: job.HttpHeader["Content-Type"] = "text/plain";
类型 Object
访问权限 Get Set
使用说明 默认情况下,HttpHeader是一个空对象。如果保持原样,则使用默认标头。否则,此属性设置的标头将添加到HTTP Post请求或替换具有相同名称的现有标头。
版本信息 v14.0
SourceValue
指定要上传的文件及其名称。这些文件由URL指定,可以使用GenerateURLForUploadData方法创建。此对象有一个Add方法可以把文件添加到作业中。
类型 Object
访问权限 Get Set
使用说明
版本信息 v14.0

事件

OnUploadTransferPercentage
在执行上传作业期间触发该事件。它有一个参数指定作业完成的百分比。
语法 .OnUploadTransferPercentage = function(){...};
参数
  • Object obj: 一个作业对象。
  • Number sPercentage: 完成作业的百分比。
示例代码
job.OnUploadTransferPercentage = FileUpload_OnUploadTransferPercentage; 
function FileUpload_ OnUploadTransferPercentage (obj, sPercentage){
    console.log(sPercentage);
}
使用说明
版本信息 v14.0+
OnRunSuccess
上传作业成功时会触发该事件。
语法 .OnRunSuccess = function(){...};
参数
  • Object obj: 一个作业对象。
示例代码
job.OnRunSuccess = FileUpload_OnRunSuccess; 
function FileUpload_OnRunSuccess(obj) { 
    alert(' upload completed ');
}
使用说明
版本信息 v14.0+
OnRunFailure
上传作业失败时会触发该事件。
语法 .OnRunFailure = function(){...};
参数
  • Object obj: 一个作业对象。
  • Number errorCode: 错误代码。
  • String errorString: 错误信息。
示例代码
job.OnRunFailure = FileUpload_OnRunFailure; 
function FileUpload_OnRunFailure(obj, errorCode, errorString) { 
    alert(errorString); 
}
使用说明
版本信息 v14.0+

results matching ""

    No results matching ""

    results matching ""

      No results matching ""