FileApplet.txt 7.5 KB
Newer Older
1 2 3 4 5 6 7 8 9
文件操作浏览器小程序,基于跨浏览器的小程序系统-PluginOK(牛插)中间件(https://github.com/wangzuohuai/WebRunLocal)开发,提供本地文件HTTP协议的上传与下载、本地图像文件旋转与缩放、本地文件访问、本地程序运行等服务。最低可用在Chrome 41、Firefox 52、Edge 80(Chromium内核)、360极速/安全、IE 8、Oprea 36、QQ、搜狗等浏览器,也兼容运行于这些浏览器的最新版本。

1、PluginOK(牛插)中间件的安装:
1)、如果是exe的安装程序,请直接运行安装;
2)、如果是绿色版的程序包,请解压到磁盘某个目录后,双击“InstallWrl.bat”进行安装;
3)、安装完成时会启动PluginOK中间件服务,在安装目录下的Data子目录有WrlService.txt日志文件输出运行情况。

2、请求安装文件操作小程序:

W
wangzuohuai 已提交
10
{"req":"Plugin_Install","rid":1,"para":{"Name":"文件操作小程序","PID":"199BB8A7-9DD5-41F5-AE9D-2AA94300B0B3","Date":"2021-02-23","Desc":"PluginOK中间件之上跨浏览器的文件操作小程序,提供文件HTTP协议上传与下载、本地图像文件缩放与旋转、本地文件访问、本地程序运行等服务,可在Chrome、Edge、Firefox、IE、Opera、360、QQ等的浏览器最新版中调用","DownAddr":"http://local.zorrosoft.com/Files/Plugin/WrlFileApplet.pid","MD5":"6B87E5B3C32F9FD0208336A735838985","Version":"2.1.1.2","Size":491520,"HideIns":0,"Type":1,"Cookie":"","Auth":"","TK":"193EAB7E814E7DE9059B6424266E6CE9EE48B0FB917652B12394B932CE12C817A66813F386C47C00E403A9B49177A8E485E1090C4461470616ACE61F4E9BD213F9E7E2A87C9AAFEC5FE66EDFEAB96681098E8C1A49CAAFA8D8DE04FBECF942E326EDAB27F7783305B49C475ACF38F1AA0BF9C0D05585AF489BAF369A5C52CA6BE3DF4C58496243DE5178B7047677748B92ACF9F5F800A89742BFAF9D2F52C37B79D15802623C4DC3E7810C7326747019FA2B86CBACD903C3B3DB66DD9C3236298181E3376048BDC8A7A9E6B1A753AA714BF46562DECC541D786E443BAC5245CAA935E7732B6CCEE82F2071B618017339E8A89C833BEBF5F89ED47C9963BE721D"}}
11 12 13

3、请求更新文件操作小程序:

W
wangzuohuai 已提交
14
{"req":"Plugin_Update","rid":1,"para":{"Name":"文件操作小程序","PID":"199BB8A7-9DD5-41F5-AE9D-2AA94300B0B3","Date":"2021-02-23","Desc":"PluginOK中间件之上跨浏览器的文件操作小程序,提供文件HTTP协议上传与下载、本地图像文件缩放与旋转、本地文件访问、本地程序运行等服务,可在Chrome、Edge、Firefox、IE、Opera、360、QQ等的浏览器最新版中调用","DownAddr":"http://local.zorrosoft.com/Files/Plugin/WrlFileApplet_Update.pid","MD5":"5FBB6377BD4C75991C9CE0B5C0BD3850","Version":"2.1.1.2","Size":491520,"HideIns":0,"Type":1,"Cookie":"","Auth":"","TK":"03C1B099216E5B13A1386EBAA11D1D19E851DD5EEEBF96D920FEA00344EB9BBF73DCC49F6958EDB17FAF5B88B8D1EC4CA5DA10B0E12629B12CEDFB6004522D1041EF42868B86C94856B9E0B10252F77682E1BC91BCF4F7F89947AAF1C1F0E01C7DC04EB52806516EBC1133F4A173A1A809ABD0D10237654FE0116B44A2082BAD6FB56165759BB2DA490782EC05B425DCC78188360E738E5DDA67847965092DA52328B25482A91C017FCEC7AAB1283BC59C16B386C4DBC96373ED2FC547B646FCDE14B9B2F077941151120D3C333CC15B894FF41126BE46155572A935AF69D40D3F7989CF3281C59FB096B07E1036179B898267A2080CA86107E011812EC2938A"}}
15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74

以上安装和升级的JSON请求包,可能因版本升级导致内容不同,如遇安装或升级时报错,请联系客服获取最新的请求包。 

4、连接请求文件操作小程序服务:
1)、图像文件处理及本地文件操作服务
说明:以下功能请通过Web Socket连接后可执行,如默认侦听端口不是80(关于如何配置侦听端口,请参考SDK包中的文档“PluginOK开发者手册.doc”),请在连接地址中指定端口号进行连接。
打开测试网页,输入地址:ws://localhost?sid=667&pid=D325C871-AB46-479B-B20E-1D861D26CA89&flag=1 点击连接;

支持的协议功能如下:
A、批量旋转图像文件
SrcFile、DestFile传入前需进行UrlEncode编码
{"req":"File_RotateImg","rid":1,"para":{"Angle":90,"Items":[{"ID":"11","SrcFile":"C:/Users/trade/Pictures/test/test.png","DestFile":"C:/Users/trade/Pictures/test/testnew.png"}]}} 
旋转指定文件SrcFile指定角度Angle,DestFile为指定时代表生成新图像文件,不指定时直接覆盖到原图
返回内容 {"ret":0,"rid":1,"data":{"Ret":[{"ID":"","Ret":1},{"ID":"","Ret":1}]}} Ret代表是否成功

B、请求指定图像文件的BASE64编码数据
File传入前需进行UrlEncode编码
{"req":"File_GetImg","rid":2,"para":{"File":"C:/test.jpg","Original":1,"Thumb":{"Width":200,"Height":300,"File":"C:/Newtest.jpg"}}}  
指定Original为1时代表同时取原图,有Thumb节点时取指定大小的缩略图,Thumb节点中指定File文件名代表保存到本地,不指定时取原图数据 {"ret":0,"rid":2,"data":{"Thumb":"","Original":"","ThumbFile":"","Ret":1}}

C、关联打开指定文件或指定执行程序打开
File传入前需进行UrlEncode编码
{"req":"File_Open","rid":3,"para":{"File":"D:/Zorro/WRL/Data/WrlService.txt"}}  File为本地路径
指定执行程序打开指定文件
{"req":"File_Open","rid":4,"para":{"File":"C:/Windows/System32/notepad.exe D:/Zorro/WRL/Data/WrlService.txt"}}

D、删除本地文件
Items子项目传入前需进行UrlEncode编码
{"req":"File_Delete","rid":5,"para":{"Day":7,"Items":["c:/Newtest.jpg","c:/test.jpg"]}} 删除Items指定的本地文件,可支持多个

E、创建指定目录
Dir传入前需进行UrlEncode编码
{"req":"File_CreateDir","rid":6,"para":{"Dir":"D:/Zorro/WRL/Data/Temp"}}  Dir为本地路径
返回如下信息:
{"ret":0,"rid":6,"data":{"Ret":"1","ErrCode":0}}

F、删除指定目录及子目录所有文件
Dir传入前需进行UrlEncode编码,不能删除磁盘根目录及系统及程序目录等文件
{"req":"File_DelDir","rid":7,"para":{"Dir":"D:/Zorro/WRL/Data/Temp"}}  Dir为本地路径
返回如下信息:
{"ret":0,"rid":7,"data":{"Ret":"1"}}

G、取指定文件属性
Dir传入前需进行UrlEncode编码,不能删除磁盘根目录及系统及程序目录等文件
{"req":"File_Info","rid":8,"para":{"File":"C:/Users/trade/Pictures/test/test.png"}}  File为本地路径
返回如下类似信息:
{"ret":0,"rid":8,"data":{"Ret":"1","Size":92095,"MD5":"B28B987EC70E1E7853F89A52CEDE68F0","Attribute":32,"CreateTime":"2020-10-07 13:07:20","LastWriteTime":"2020-07-14 10:09:43","Ver":"","CorpName":"","Desc":"","Width":1280,"Height":720}}

H、取指定目录下文件和目录列表
Dir传入前需进行UrlEncode编码,不能删除磁盘根目录及系统及程序目录等文件
{"req":"File_List","rid":8,"para":{"Dir":"D:/Zorro/WRL","Find":"*.*"}}  Dir为本地路径
返回如下类似信息:
{"ret":0,"rid":8,"data":[{"Name":"WrlSetup.exe","Size":157184,"Attr":2080,"Write":"2020-10-07 15:00:15"},{"Name":"X64"}]}
无属性Attr、大小Size和文件修改时间Write的是目录,否则是文件

2)、文件HTTP上传与下载服务
打开测试网页,输入地址:ws://localhost?sid=678&pid=762C3400-B3E5-4F00-8AA7-18E00F13E414&flag=1 点击连接;
支持的协议功能如下:

A、下载文件
W
wangzuohuai 已提交
75 76 77 78
Url、File传入前需进行UrlEncode编码,分别为文件下载地址和本地保存路径
下载权限参数Cookie和Auth,服务器要求的,MD5和Size分别为下载文件MD5哈希值及大小,可没有
批量下载指定URL及文件名File等参数的文件,ID是前端指定的唯一ID,返回添加成功数量,重复的不计算
{"req":"File_Download","rid":1,"para":{"Cookie":"","Auth":"","Items":[{"ID":"","Url":"","File":"","MD5":"","Size":300}]}} 
79 80

B、上传文件
W
wangzuohuai 已提交
81 82 83
Url、Items子项目传入前需进行UrlEncode编码,Url为上传URL地址,ID为上传序号
批量上传到指定URL的本地文件,返回添加成功数量,重复的不计算
{"req":"File_Upload","rid":2,"para":{"ID":"","Url":"","Cookie":"","Auth":"","Para":{},"Items":["c:/Newtest.jpg","c:/test.jpg"]}} 
84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102

C、停止上传/下载 一般用于页面退出
{"req":"File_Stop","rid":3,"para":{""Type":1}} 不指定停止所有,指定Type时1代表下载 2代表上传

D、删除数据记录
{"req":"File_Delete","rid":4,"para":{"Day":7}} 删除指定Day前数据库中的上传下载任务记录

/// 单个下载任务通知
{"event":"File_Status","data":{"ID":"","Url":"","File":"","Type":1,"Status":0,"Percent":0,"Error":""}} Status为状态码(1等待 2 正在进行 4成功 8取消 16错误) Percent为百分比 Error错误描述
/// 单个上传任务通知
{"event":"File_Status","data":{"ID":"","Ret":"","Type":2,"Status":0,"Percent":0,"Error":""}} Status为状态码(1等待 2 正在进行 4成功 8取消 16错误) Percent为百分比 Error错误描述 Ret为上传成功服务器返回的数据包

/// 上传或下载全部结束通知
{"event":"File_OK","data":{"Type":1"}} 通知上传或下载结束,Type 1代表下载全部完成 2代码上传全部完成

5、其它
请求参数的JSON数据包,请确保是UTF-8无签名的编码。
更多接口请求说明,请参考安装目录中的文档TestWrl.txt、SDK包中的“PluginOK开发者手册.doc”及“PluginOK中间件安全解决方案”。
如还有疑问请直接联系客服 加微信:ZorroSoft,或加QQ群:23126938