使用Web API处理文件请求,主要主要提供以下功能:
上传文件 (多个)
下载或查看 (根据文件Id)
批量打包下载(多个文件Id返回zip文件流)
返回多个文件信息(无文件流),用于处理文件(列表/树形)信息展示
使用百度WebUploader上传插件
文件服务接口地址、验证参数均由业务站点服务器下发
① "server":文件服务API地址fsApiUrl // http://192.168.0.109:8088/FileInfo/AjaxUpload
② 验证参数:
"sysCode" : 调用方标识码 //e.g. JieNor,yidaohome,YDJ
"authCode" : 验证密钥 // 加密串
③ 具体客户端Ajax调用方式参看 js Help
返回数据:
Dictionary<Key,Value>
fileId (Dictionary<Key,value>) --> { name:"111.jpg", size:"1596", url:"", thumbnailSrc:"", printTextSrc:"", printLogoSrc:"", finishTime:"yyyy-MM-dd HH:mm:ss" }
Http Response(json):
{
"5d62216f87df94293a4798648109ec01": { //文件Id
"FileId": "5d62216f87df94293a4798648109ec01", //文件Id
"FileName": "201409061031406583.jpg", //文件名
"FileSize": 80712, //字节数
"Url": "http://192.168.0.109:8088/images/5d62216f87df94293a4798648109ec01.jpg", //文件Url/Src
"ThumbnailSrc": "http://192.168.0.109:8088/images/5d62216f87df94293a4798648109ec01.thumbnail.jpg", //缩略图
"PrintTextSrc": "http://192.168.0.109:8088/images/5d62216f87df94293a4798648109ec01.watermark.jpg", //文字水印
"PrintLogoSrc": "http://192.168.0.109:8088/images/5d62216f87df94293a4798648109ec01.waterpic.jpg", //图片水印
"FinishTime": "2017-07-18 20:05:45"
}
}
如果是普通文件(非图片):
{
"0a97704bfe2c4d42aa4fcf6ac123e288": { //文件Id
"FileId": "0a97704bfe2c4d42aa4fcf6ac123e288", //文件Id
"FileName": "201409061031406583.rar", //文件名
"FileSize": 80712, //字节数
"Url": "http://192.168.0.109:8088/FileInfo/GetFile?fileId=0a97704bfe2c4d42aa4fcf6ac123e288", //文件Url/Src
"ThumbnailSrc": "", //缩略图 null
"PrintTextSrc": "", //文字水印 null
"PrintLogoSrc": "", //图片水印 null
"FinishTime": "2017-07-18 20:05:45"
}
}
HttpGet http:// {域名或文件服务器IP:端口} /FileInfo/GetFile?fileId={id}
测试下载:FileId:5d62216f87df94293a4798648109ec01
HttpPost http://{域名或文件服务器IP:端口} /FileInfo/FetchFiles
public class FetchFileInput {
public string FileIds { get; set; } //多个文件Id:2a4feab94e2d0d4a914e950baeefe1d6,5452a6c8264077af61ffb56c6dd6b748,61b2f62a77af90d798f7dcc35347536b
}
// 具体在页面调用参看js Help