@@ -2334,6 +2334,165 @@ function orc() {
23342334 } ) ;
23352335}
23362336
2337+ // 提交文件压缩任务
2338+ function postFileCompress ( ) {
2339+ var host = config . Bucket + '.ci.' + config . Region + '.myqcloud.com/file_jobs' ;
2340+ var url = 'https://' + host ;
2341+ var body = COS . util . json2xml ( {
2342+ Request : {
2343+ Tag : 'FileCompress' , // 必须
2344+ Operation : {
2345+ FileCompressConfig : {
2346+ Flatten : '0' , // 文件打包时,是否需要去除源文件已有的目录结构.0:不需要;1:需要
2347+ Format : 'zip' , // 打包压缩的类型,有效值:zip、tar、tar.gz
2348+ // UrlList、Prefix、Key 三者仅能选择一个,不能都为空,也不会同时生效
2349+ // UrlList: '', // 索引文件的对象地址
2350+ Prefix : 'testCompress/' , // 目录前缀
2351+ // Key: [], // 支持对存储桶中的多个文件进行打包,个数不能超过 1000, 总大小不超过50G,否则会导致任务失败
2352+ } ,
2353+ Output : {
2354+ Bucket : config . Bucket , // 保存压缩后文件的存储桶
2355+ Region : config . Region , // 保存压缩后文件的存储桶地域
2356+ Object : 'testCompress/compressed.zip' , // 压缩后文件的文件名
2357+ } ,
2358+ UserData : '' ,
2359+ } ,
2360+ // QueueId: '', // 任务所在的队列 ID
2361+ // CallBack: 'http://callback.demo.com', // 任务回调的地址
2362+ // CallBackFormat: 'JSON', // 任务回调格式
2363+ // CallBackType: 'Url', // 任务回调类型,Url 或 TDMQ,默认 Url
2364+ }
2365+ } ) ;
2366+ cos . request ( {
2367+ Method : 'POST' ,
2368+ Key : 'file_jobs' ,
2369+ Url : url ,
2370+ Body : body ,
2371+ ContentType : 'application/xml' ,
2372+ } ,
2373+ function ( err , data ) {
2374+ logger . log ( err || data ) ;
2375+ } ) ;
2376+ }
2377+
2378+ // 查询文件压缩任务结果
2379+ function getFileCompress ( ) {
2380+ var jobId = 'faf1d2774a13911ed88a65b0c303ae7xx' ; // 提交文件压缩任务后会返回当前任务的jobId
2381+ var host = config . Bucket + '.ci.' + config . Region + '.myqcloud.com/file_jobs/' + jobId ;
2382+ var url = 'https://' + host ;
2383+ cos . request ( {
2384+ Method : 'GET' ,
2385+ Key : 'file_jobs/' + jobId ,
2386+ Url : url ,
2387+ } ,
2388+ function ( err , data ) {
2389+ logger . log ( err || data ) ;
2390+ } ) ;
2391+ }
2392+
2393+ // 提交文件解压任务
2394+ function postFileUnCompress ( ) {
2395+ var host = config . Bucket + '.ci.' + config . Region + '.myqcloud.com/file_jobs' ;
2396+ var url = 'https://' + host ;
2397+ var body = COS . util . json2xml ( {
2398+ Request : {
2399+ Tag : 'FileUncompress' , // 必须
2400+ Input : {
2401+ Object : 'testCompress/compressed.zip' , // 文件名,取值为文件在当前存储桶中的完整名称
2402+ } ,
2403+ Operation : {
2404+ FileUncompressConfig : {
2405+ Prefix : '' , // 指定解压后输出文件的前缀,不填则默认保存在存储桶根路径
2406+ PrefixReplaced : '0' , // 指定解压后的文件路径是否需要替换前缀,默认0
2407+ } ,
2408+ Output : {
2409+ Bucket : config . Bucket , // 保存解压后文件的存储桶
2410+ Region : config . Region , // 保存解压后文件的存储桶地域
2411+ } ,
2412+ } ,
2413+ // QueueId: '', // 任务所在的队列 ID
2414+ // CallBack: 'http://callback.demo.com', // 任务回调的地址
2415+ // CallBackFormat: 'JSON', // 任务回调格式
2416+ // CallBackType: 'Url', // 任务回调类型,Url 或 TDMQ,默认 Url
2417+ }
2418+ } ) ;
2419+ cos . request ( {
2420+ Method : 'POST' ,
2421+ Key : 'file_jobs' ,
2422+ Url : url ,
2423+ Body : body ,
2424+ ContentType : 'application/xml' ,
2425+ } ,
2426+ function ( err , data ) {
2427+ logger . log ( err || data ) ;
2428+ } ) ;
2429+ }
2430+
2431+ // 查询文件解压任务结果
2432+ function getFileUnCompress ( ) {
2433+ var jobId = 'fe7b0fa34a13911eda186254bb8f3aaxx' ; // 提交文件解压任务后会返回当前任务的jobId
2434+ var host = config . Bucket + '.ci.' + config . Region + '.myqcloud.com/file_jobs/' + jobId ;
2435+ var url = 'https://' + host ;
2436+ cos . request ( {
2437+ Method : 'GET' ,
2438+ Key : 'file_jobs/' + jobId ,
2439+ Url : url ,
2440+ } ,
2441+ function ( err , data ) {
2442+ logger . log ( err || data ) ;
2443+ } ) ;
2444+ }
2445+
2446+ // 提交哈希值计算任务
2447+ function postFileHash ( ) {
2448+ var host = config . Bucket + '.ci.' + config . Region + '.myqcloud.com/file_jobs' ;
2449+ var url = 'https://' + host ;
2450+ var body = COS . util . json2xml ( {
2451+ Request : {
2452+ Tag : 'FileHashCode' , // 必须
2453+ Input : {
2454+ Object : 'test/1.pdf' , // 文件名,取值为文件在当前存储桶中的完整名称
2455+ } ,
2456+ Operation : {
2457+ FileHashCodeConfig : {
2458+ Type : 'MD5' , // 哈希值的算法类型,有效值:MD5、SHA1、SHA256
2459+ AddToHeader : 'false' , // 是否将计算得到的哈希值添加至文件自定义header, 有效值:true、false,默认值为 false。
2460+ } ,
2461+ // UserData: '', // 透传用户信息, 可打印的 ASCII 码, 长度不超过1024
2462+ } ,
2463+ // QueueId: '', // 任务所在的队列 ID
2464+ // CallBack: 'http://callback.demo.com', // 任务回调的地址
2465+ // CallBackFormat: 'JSON', // 任务回调格式
2466+ // CallBackType: 'Url', // 任务回调类型,Url 或 TDMQ,默认 Url
2467+ }
2468+ } ) ;
2469+ cos . request ( {
2470+ Method : 'POST' ,
2471+ Key : 'file_jobs' ,
2472+ Url : url ,
2473+ Body : body ,
2474+ ContentType : 'application/xml' ,
2475+ } ,
2476+ function ( err , data ) {
2477+ logger . log ( err || data ) ;
2478+ } ) ;
2479+ }
2480+
2481+ // 查询哈希值计算任务结果
2482+ function getFileHashResult ( ) {
2483+ var jobId = 'f3addcbd0a13811ed9b4ff5338d756fxx' ; // 提交文件哈希值计算任务后会返回当前任务的jobId
2484+ var host = config . Bucket + '.ci.' + config . Region + '.myqcloud.com/file_jobs/' + jobId ;
2485+ var url = 'https://' + host ;
2486+ cos . request ( {
2487+ Method : 'GET' ,
2488+ Key : 'file_jobs/' + jobId ,
2489+ Url : url ,
2490+ } ,
2491+ function ( err , data ) {
2492+ logger . log ( err || data ) ;
2493+ } ) ;
2494+ }
2495+
23372496( function ( ) {
23382497 var list = [
23392498 'header-工具函数' ,
@@ -2453,6 +2612,12 @@ function orc() {
24532612 'identifyQrcode_get' ,
24542613 'generateQrcode' ,
24552614 'orc' ,
2615+ 'postFileCompress' ,
2616+ 'getFileCompress' ,
2617+ 'postFileUnCompress' ,
2618+ 'getFileUnCompress' ,
2619+ 'postFileHash' ,
2620+ 'getFileHashResult' ,
24562621 ] ;
24572622 var labelMap = {
24582623 putObject : '简单上传' ,
@@ -2502,6 +2667,12 @@ function orc() {
25022667 identifyQrcode_get : '二维码识别(下载时识别)' ,
25032668 generateQrcode : '二维码生成' ,
25042669 orc : '图片文字识别' ,
2670+ postFileCompress : '提交文件压缩任务' ,
2671+ getFileCompress : '查询文件压缩任务' ,
2672+ postFileUnCompress : '提交文件解压任务' ,
2673+ getFileUnCompress : '查询文件解压任务' ,
2674+ postFileHash : '提交哈希值计算任务' ,
2675+ getFileHashResult : '查询哈希值计算任务结果' ,
25052676 } ;
25062677 var container = document . querySelector ( '.main' ) ;
25072678 var html = [ ] ;
0 commit comments