微簽電子簽章-自動(dòng)簽章接口文檔v3.3.2_第1頁(yè)
微簽電子簽章-自動(dòng)簽章接口文檔v3.3.2_第2頁(yè)
微簽電子簽章-自動(dòng)簽章接口文檔v3.3.2_第3頁(yè)
微簽電子簽章-自動(dòng)簽章接口文檔v3.3.2_第4頁(yè)
微簽電子簽章-自動(dòng)簽章接口文檔v3.3.2_第5頁(yè)
已閱讀5頁(yè),還剩37頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

微簽電子簽章-自動(dòng)簽章接口文檔v3.3.2.doc 免費(fèi)下載

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

FORWAVE復(fù)園 微簽自動(dòng)簽章WebAPI接口說(shuō)明 微簽電子簽章自動(dòng)簽章API接口說(shuō)明forwave上海復(fù)園電子科技有限公司目錄TOC\o"1-3"\h\u113811.簡(jiǎn)介 172312.電腦端——自動(dòng)簽章接口 298042.1.實(shí)現(xiàn)原理 2252392.2.簽章規(guī)則設(shè)置 2108322.3.流程說(shuō)明 4311142.4.自動(dòng)簽章接口描述 410552.5.請(qǐng)求參數(shù)說(shuō)明(入?yún)ⅲ?5310432.6.自動(dòng)簽章請(qǐng)求示例 687282.7.返回參數(shù)說(shuō)明(出參) 13310762.8.返回參數(shù)示例 13108822.9.簽章成功文件下載 13316113.Ukey自動(dòng)簽章接口 15178583.1.Ukey自動(dòng)簽章實(shí)現(xiàn)效果原理 15124893.2.Ukey自動(dòng)簽章接口準(zhǔn)備 15199213.3.UKey自動(dòng)簽章接口概述 15269593.4.請(qǐng)求參數(shù)說(shuō)明(入?yún)ⅲ?15226003.5.UKey自動(dòng)簽章請(qǐng)求示例 16152213.6.返回參數(shù)說(shuō)明(出參) 17256843.7.簽章成功文件下載 1726774.自動(dòng)簽章規(guī)則接口 18117774.1.簽章規(guī)則接口概述 18227844.2.新建簽章規(guī)則接口 18206834.2.1.新建簽章規(guī)則接口說(shuō)明 1846124.2.2.模板文件預(yù)處理接口 18234884.2.3.新建簽章規(guī)則接口 191954.2.4.新建簽章規(guī)則示例 20193934.2.5.返回參數(shù)說(shuō)明(出參) 21150114.3.編輯簽章規(guī)則接口 2141794.3.1.編輯簽章規(guī)則接口說(shuō)明 21266304.3.2.規(guī)則編輯接口描述 2223594.3.3.編輯簽章規(guī)則示例 22250755.簽章分頁(yè)查詢接口 23172245.1簽章分頁(yè)查詢接口概述 23152005.2簽章分頁(yè)接口描述 2388955.3請(qǐng)求參數(shù)說(shuō)明(入?yún)ⅲ?24209575.4簽章分頁(yè)查詢前端示例 24225955.5返回參數(shù)說(shuō)明(出參) 25326386.簽章密碼功能接口 26147156.1簽章密碼功能接口概述 2681026.2簽章密碼功能接口描述 2618396.3請(qǐng)求參數(shù)說(shuō)明(入?yún)ⅲ?26161736.4簽章密碼功能接口前端示例 27218446.5返回參數(shù)說(shuō)明(出參) 28313997.簽章規(guī)則查詢接口 28114627.1簽章規(guī)則查詢接口概述 28316087.2簽章規(guī)則查詢接口描述 28203247.3請(qǐng)求參數(shù)說(shuō)明(入?yún)ⅲ?28203117.4簽章規(guī)則查詢接口前端示例 29140887.5返回參數(shù)說(shuō)明(出參) 29310458.簽章規(guī)則刪除接口 30304208.1簽章規(guī)則刪除接口概述 3024775調(diào)用此接口,通過(guò)傳參的規(guī)則名稱,可以刪除指定名稱的自動(dòng)或手動(dòng)簽章規(guī)則。 30114508.2簽章規(guī)則刪除接口描述 30221208.3請(qǐng)求參數(shù)說(shuō)明(入?yún)ⅲ?30286688.4簽章規(guī)則刪除接口前端示例 30250478.5返回參數(shù)說(shuō)明(出參) 3123569.綁定用戶證書接口 31128709.1.綁定證書接口描述 31224679.2.請(qǐng)求參數(shù)說(shuō)明(入?yún)ⅲ?32191089.3.綁定用戶證書請(qǐng)求示例 32142469.4.返回參數(shù)說(shuō)明(出參) 33425110.創(chuàng)建簽章用戶接口 33486510.1.創(chuàng)建簽章用戶接口描述 332581610.2.請(qǐng)求參數(shù)說(shuō)明(入?yún)ⅲ?342288010.3.創(chuàng)建簽章用戶請(qǐng)求示例 342428110.4.返回參數(shù)說(shuō)明(出參) 351655911.錯(cuò)誤碼參照 351282812.技術(shù)支持 39PAGE14

簡(jiǎn)介微簽電子簽章是上海復(fù)園電子科技有限公司根據(jù)多年的辦公自動(dòng)化、業(yè)務(wù)文檔流轉(zhuǎn)處理經(jīng)驗(yàn),開(kāi)發(fā)的一套智能安全電子簽章軟件。它以版式文件為基礎(chǔ),實(shí)現(xiàn)對(duì)文檔全文批注、電子印章、安全文檔等功能。微簽WebAPI接口,可以很方便地與各種Web環(huán)境相整合,與協(xié)同辦公平臺(tái)、電子政務(wù)平臺(tái)、OA辦公自動(dòng)化系統(tǒng)、ERP系統(tǒng)集成,打通無(wú)紙化辦公的最后一個(gè)環(huán)節(jié)。微簽電子印章管理后臺(tái),是整個(gè)電子簽章系統(tǒng)的核心,完成對(duì)每一個(gè)電子印章全生命周期的管理,包括電子印章制作、印模管理、印章授權(quán)、數(shù)字證書綁定、簽章日志等。本文只介紹微簽自動(dòng)簽章接口,適用于業(yè)務(wù)系統(tǒng)中有大量文件需要批量自動(dòng)蓋章的業(yè)務(wù)場(chǎng)景。支持與各種業(yè)務(wù)系統(tǒng)集成,自動(dòng)捕獲業(yè)務(wù)系統(tǒng)生成的各種固定樣式文件,在預(yù)定位置自動(dòng)簽章。支持多種簽章規(guī)則組合調(diào)用,如同簽章機(jī)器人,在海量文件上批量自動(dòng)簽章。電腦端——自動(dòng)簽章接口自動(dòng)簽章接口是簽章平臺(tái)與各系統(tǒng)對(duì)接,實(shí)現(xiàn)無(wú)人工干預(yù)自動(dòng)蓋章的接口。實(shí)現(xiàn)原理第一步:用戶系統(tǒng)自行準(zhǔn)備簽章文件下載接口。第二步:用戶系統(tǒng)向簽章平臺(tái)發(fā)送自動(dòng)簽章請(qǐng)求。第三步:請(qǐng)求參數(shù)中包含簽章平臺(tái)已建立的自動(dòng)簽章規(guī)則名稱。第四步:簽章平臺(tái)響應(yīng)請(qǐng)求,下載簽章文件并調(diào)用指定的簽章規(guī)則進(jìn)行自動(dòng)簽章。第五步:簽章平臺(tái)返回簽章完成文件FileKey。第六步:用戶系統(tǒng)根據(jù)FileKey,調(diào)用簽章服務(wù)器下載接口,下載簽章完成文件。注:簽章規(guī)則的類型有如下幾種:指定印章指定位置手寫簽名指定坐標(biāo)單頁(yè)蓋章指定坐標(biāo)多頁(yè)蓋章首位關(guān)鍵字蓋章全部關(guān)鍵字蓋章騎縫章指定坐標(biāo)單頁(yè)時(shí)間戳指定坐標(biāo)多頁(yè)時(shí)間戳簽章規(guī)則設(shè)置在簽章服務(wù)器后臺(tái),可設(shè)置各種簽章規(guī)則,簽章規(guī)則可任意組合使用:在下方圖片的紅色方框內(nèi)設(shè)置簽章的簽章方式:如,可全文搜索關(guān)鍵詞的位置自動(dòng)蓋章:如,在指定坐標(biāo)位置自動(dòng)蓋章:流程說(shuō)明自動(dòng)簽章接口描述接口地址:http://WeiQianSealURL:9999/autoSeal/doSeal請(qǐng)求方式:POST參數(shù)格式:JSON返回格式:JSON請(qǐng)求參數(shù)說(shuō)明(入?yún)ⅲ﹨?shù)名說(shuō)明必選signKey接口簽名keyYessignSecret接口簽名秘鑰YesprovideSigFile需簽章的文件下載地址YesfileKey簽章文件key或?qū)?yīng)的任務(wù)IDNosealUser規(guī)則用章授權(quán)用戶(單用戶)Nopassword規(guī)則用章授權(quán)用戶密碼(單用戶)NoruleName規(guī)則名稱(單用戶)NoruleCollection多用戶和多個(gè)簽章規(guī)則的集合NowaterMark簽章文件添加水印No所有參數(shù)需為Base64編碼,中文編碼為UTF-8,簽章平臺(tái)編碼解碼類為sun.misc.BASE64Decoder和sun.misc.BASE64Encoder。signKey和signSecret由我司商務(wù)部提供。一次請(qǐng)求的所有規(guī)則都是同一用戶蓋章時(shí),使用sealUser、password、ruleName(多個(gè)規(guī)則用逗號(hào)間隔)。一次請(qǐng)求的多個(gè)規(guī)則由不同用戶簽章時(shí),使用ruleCollection參數(shù):集合的每個(gè)元素就是一個(gè)對(duì)象,也就是sealUser、password、ruleName(多個(gè)規(guī)則用逗號(hào)間隔)封裝的對(duì)象。用戶系統(tǒng)提供下載的簽章文件,要指定簽章文件類型,以下三種指定方式必須具備其一。指定方式一,使用fileKey參數(shù),并且參數(shù)中指定文件類型,如:FWBPDtask000000001.pdf。 指定方式二,在提供的下載地址中指定。如: 1:8080/download?id=FWBPDtask000000001.pdf指定方式三,下載接口代碼中指定,使用response.addHeader("Content-Disposition", "attachment;filename=FWBPDtask000000001.pdf")方式。非必須參數(shù)fileKey,是為用戶系統(tǒng)把簽章結(jié)果和自己的系統(tǒng)任務(wù)對(duì)應(yīng)起來(lái)而設(shè)計(jì)的。如果請(qǐng)求參數(shù)中提供了fileKey,那么此請(qǐng)求的簽章結(jié)果也將返回fileKey;如果請(qǐng)求參數(shù)中沒(méi)有提供,那么簽章結(jié)果將返回一串隨機(jī)序號(hào)。fileKey建議只使用英文和數(shù)字,最好包含用戶系統(tǒng)的編號(hào)或名稱,以及當(dāng)前任務(wù)的ID。如:FWBPDtask000000001202107121412簽章文件不是pdf類型時(shí),有下列非必須參數(shù)(傳參時(shí)不用Base64編碼)。當(dāng)參數(shù)為空時(shí),將取系統(tǒng)參數(shù)設(shè)置值。參數(shù)名說(shuō)明必選sealFileCharSetName簽章文件編碼NomarginLeft簽章文件轉(zhuǎn)換PDF左邊距NomarginRight簽章文件轉(zhuǎn)換PDF右邊距NomarginTop簽章文件轉(zhuǎn)換PDF上邊距NomarginBottom簽章文件轉(zhuǎn)換PDF下邊距No自動(dòng)簽章請(qǐng)求示例后臺(tái)請(qǐng)求方式(單用戶方式):publicSealResponseautoSealReqParam(){ Map<String,String>params=newHashMap<String,String>();StringrequestUrl="9:9999/autoSeal/doSeal";StringsealUser64=Base64.base64Encode("admin");Stringpassword64=Base64.base64Encode("999999");StringsignKey64=Base64.base64Encode("WQS20214205b6b");StringsignSecret64=Base64.base64Encode("9999999999999999");StringruleName64=Base64.base64Encode("rule1");StringsealFileUrl64=Base64.base64Encode("0:8080/doSeal/getHandledFile/h1.pdf");params.put("sealUser",sealUser64);params.put("password",password64);params.put("signKey",signKey64);params.put("signSecret",signSecret64);params.put("ruleName",ruleName64);params.put("provideSigFile",sealFileUrl64);//調(diào)用httpRequest方法,這個(gè)方法主要用于請(qǐng)求地址,并加上請(qǐng)求參數(shù)try{URLurl=newURL(requestUrl);HttpURLConnectionconnection=(HttpURLConnection)url.openConnection();connection.setDoOutput(true);connection.setDoInput(true);connection.setRequestMethod("POST");connection.setUseCaches(false);connection.setInstanceFollowRedirects(true);connection.setRequestProperty("Content-Type","application/json");connection.connect();ObjectMappermapper=newObjectMapper();Stringjson=mapper.writeValueAsString(params);BufferedWriterwriter=newBufferedWriter(newOutputStreamWriter(connection.getOutputStream(),"UTF-8"));writer.write(json);writer.close();intresponseCode=connection.getResponseCode();if(responseCode==HttpURLConnection.HTTP_OK){InputStreaminputStream=connection.getInputStream();SealResponsesealResponse=mapper.readValue(inputStream,SealResponse.class);System.out.println(sealResponse.getData());}}catch(Exceptione){e.printStackTrace();logger.error("自動(dòng)簽章請(qǐng)求異常!");}returnnull;}publicstaticStringbase64Encode(StringplainTxt){try{returnnewBASE64Encoder().encode(plainTxt.getBytes("UTF-8"));}catch(UnsupportedEncodingExceptione){e.printStackTrace();returnnull;}}publicstaticStringbase64Decode(StringsecureTxt){byte[]bytes;try{bytes=newBASE64Decoder().decodeBuffer(secureTxt);returnnewString(bytes,"UTF-8");}catch(Exceptione){e.printStackTrace();returnnull;}}publicclassSealResponse{privateStringcode;privateStringmsg;privateStringdata;privateStringtimestamp;publicStringgetCode(){returncode;}publicvoidsetCode(Stringcode){this.code=code;}publicStringgetMsg(){returnmsg;}publicvoidsetMsg(Stringmsg){this.msg=msg;}publicStringgetData(){returndata;}publicvoidsetData(Stringdata){this.data=data;}publicStringgetTimestamp(){returntimestamp;}publicvoidsetTimestamp(Stringtimestamp){this.timestamp=timestamp;}}后臺(tái)請(qǐng)求方式(多用戶用戶方式):publicSealResponseautoSealReqParam()throwsUnsupportedEncodingException{BASE64Encoderencoder=newBASE64Encoder();StringsignKey64=encoder.encode("WQS20214205b6b".getBytes("UTF-8"));StringsignSecret64=encoder.encode("9999999999999999".getBytes("UTF-8"));StringfileKey64=encoder.encode("f0369d3e85ac479a8df4613ea3a4c507".getBytes("UTF-8"));StringsealFileUrl64=encoder.encode("0:8080/doSeal/getHandledFile/test.pdf".getBytes("UTF-8"));List<AutoSeaSingleEntity>ruleCollection=newArrayList<>();ruleCollection.add(newAutoSeaSingleEntity("u1","666666","規(guī)則1,規(guī)則2"));ruleCollection.add(newAutoSeaSingleEntity("u2","666666","規(guī)則3,規(guī)則4"));ruleCollection.add(newAutoSeaSingleEntity("u3","666666","規(guī)則5,規(guī)則6"));Map<String,Object>params=newHashMap<>();params.put("signKey",signKey64);params.put("signSecret",signSecret64);params.put("fileKey",fileKey64);params.put("provideSigFile",sealFileUrl64);params.put("ruleCollection",ruleCollection);try{URLurl=newURL("0:9999/autoSeal/doSeal");HttpURLConnectionconnection=(HttpURLConnection)url.openConnection();connection.setDoOutput(true);connection.setDoInput(true);connection.setRequestMethod("POST");connection.setUseCaches(false);connection.setInstanceFollowRedirects(true);connection.setRequestProperty("Content-Type","application/json");connection.connect();ObjectMappermapper=newObjectMapper();Stringjson=mapper.writeValueAsString(params);BufferedWriterwriter=newBufferedWriter(newOutputStreamWriter(connection.getOutputStream(),"UTF-8"));writer.write(json);writer.close();intresponseCode=connection.getResponseCode();if(responseCode==HttpURLConnection.HTTP_OK){InputStreaminputStream=connection.getInputStream();SealResponsesealResponse=mapper.readValue(inputStream,SealResponse.class);System.out.println(sealResponse.getData());}}catch(Exceptione){e.printStackTrace();}returnnull;}publicclassAutoSeaSingleEntity{/***規(guī)則名稱*/privateStringruleName;/***簽章用戶*/privateStringsealUser;/***簽章用戶密碼md5*/privateStringpassword;publicStringgetRuleName(){returnruleName;}publicvoidsetRuleName(StringruleName){this.ruleName=ruleName;}publicStringgetSealUser(){returnsealUser;}publicvoidsetSealUser(StringsealUser){this.sealUser=sealUser;}publicStringgetPassword(){returnpassword;}publicvoidsetPassword(Stringpassword){this.password=password;}publicAutoSeaSingleEntity(){super();}publicAutoSeaSingleEntity(StringsealUser,Stringpassword,StringruleName)throwsUnsupportedEncodingException{BASE64Encoderencoder=newBASE64Encoder();this.sealUser=encoder.encode(sealUser.getBytes("UTF-8"));this.password=encoder.encode(password.getBytes("UTF-8"));this.ruleName=encoder.encode(ruleName.getBytes("UTF-8"));}}前端請(qǐng)求方式(單用戶方式):functiondoAutoSig(){let_ruleName=btoa(unescape(encodeURIComponent('演示規(guī)則')));let_sealUser=btoa('sysuser');let_password=btoa('666666666');let_signKey=btoa('WQS202189898776');let_signSecret=btoa('999999999999999999');let_fileKey=btoa('1234abc');let_provideSigFile=btoa('0:8080/doSeal/getHandledFile/h1.pdf"');$.ajax({url:_wqSigServer+'/autoSeal/doSeal',data:JSON.stringify({ruleName:_ruleName,sealUser:_sealUser,password:_password,signKey:_signKey,signSecret:_signSecret,fileKey:_fileKey,provideSigFile:_provideSigFile}),type:'post',dataType:'json',contentType:"application/json;charset=UTF-8",success:function(result){if(result.code==0){window.location.href='0:9999/no/getSealFile'+result.data;}else{alert(result.msg);}},});}前端請(qǐng)求方式(多用戶方式):functiondoAutoSig(){//自動(dòng)簽章請(qǐng)求入?yún)etu1={},u2={},u3={};u1.sealUser=btoa('u1');u1.password=btoa('666666');u1.ruleName=btoa(unescape(encodeURIComponent('規(guī)則1,規(guī)則2')));u2.sealUser=btoa('u2');u2.password=btoa('666666');u2.ruleName=btoa(unescape(encodeURIComponent('規(guī)則3,規(guī)則4')));u3.sealUser=btoa('u3');u3.password=btoa('666666');u3.ruleName=btoa(unescape(encodeURIComponent('規(guī)則5,規(guī)則6')));letruleCollection=[u1,u2,u3];let_signKey=btoa('WQS202189898776');let_signSecret=btoa('999999999999999999');let_fileKey=btoa('1234abc');let_provideSigFile=btoa('0:8080/doSeal/getHandledFile/h1.pdf"');$.ajax({url:_wqSigServer+'/autoSeal/doSeal',data:JSON.stringify({ruleCollection:ruleCollection,signKey:_signKey,signSecret:_signSecret,fileKey:_fileKey,provideSigFile:_provideSigFile}),type:'post',dataType:'json',contentType:"application/json;charset=UTF-8",success:function(result){if(result.code==0){window.location.href='showSigFile.html?sigFilePrefix='+_wqSigServer+'/no/getSealFile/'+"&sigFile="+result.data;}else{alert(result.msg);}},});}返回參數(shù)說(shuō)明(出參)參數(shù)名說(shuō)明code返回的狀態(tài)碼,0是成功,非0是錯(cuò)誤碼msg返回的說(shuō)明信息data簽章文件FileKeytimestamp返回結(jié)果的時(shí)間戳返回參數(shù)示例{"code":"0","msg":"關(guān)鍵字自動(dòng)蓋章完成!","timestamp":1575461457169,"data":"fe52a861b1eb4739bbb50cd1c73d72cd.pdf"}{"code":"107","msg":"簽章規(guī)則(6666666666666)不存在!","timestamp":1575460560586,"data":null}簽章成功文件下載接口地址:http://WeiQianSealURL:9999/no/getSealFile/fileKey請(qǐng)求方式:GET返回:簽章完成文件注意:使用fileKey下載簽章完成文件時(shí),當(dāng)下載完成后,此fileKey將失效。后臺(tái)請(qǐng)求下載示例:StringdownloadUrl="0:9999/no/" +"getSealFile/fe52a861b1eb4739bbb50cd1c73d72cd.pdf";StringdesFile="D:/temp/seal/對(duì)賬單_20200711.pdf";intbyteRead=0; try{ URLurl=newURL(downloadUrl); URLConnectionconnection=url.openConnection();InputStreaminput=connection.getInputStream();FileOutputStreamoutput=newFileOutputStream(desFile);byte[]buffer=newbyte[1024];while((byteRead=input.read(buffer))!=-1){ output.write(buffer,0,byteRead);}output.flush();output.close(); }catch(MalformedURLExceptione){ //TODOAuto-generatedcatchblock e.printStackTrace(); }catch(IOExceptione){ //TODOAuto-generatedcatchblock e.printStackTrace(); }前端下載文件并顯示:success:function(result){if(result.code==0){window.location.href='0:9999/no/getSealFile'+result.data;}else{alert(result.msg);}},注意:fileKey只支持一次下載,下載完成后fileKey將失效!Ukey自動(dòng)簽章接口Ukey自動(dòng)簽章實(shí)現(xiàn)效果原理Ukey簽章是從Ukey中拿去印章蓋章的,有著更高的安全性。Ukey自動(dòng)簽章接口準(zhǔn)備客戶端電腦安裝Ukey驅(qū)動(dòng)——WeiQian_UKey_Driver_216.exe引入wqToken.js和mToken.jsUKey自動(dòng)簽章接口概述準(zhǔn)備入?yún)?shù),因ukPin只用作前端校驗(yàn)Ukey,所以不需要Base64編碼。調(diào)用WQ_UkeySignature方法進(jìn)行UKey校驗(yàn),只需傳入ukPin。UKey校驗(yàn)成功后,會(huì)自動(dòng)調(diào)用準(zhǔn)備的入?yún)?shù)提交簽章請(qǐng)求。通過(guò)responseCode、responseData、responseMsg可獲得簽章返回結(jié)果。請(qǐng)求參數(shù)說(shuō)明(入?yún)ⅲ┡c2.3自動(dòng)簽章接口相比,Ukey自動(dòng)簽章多了一個(gè)必須參數(shù)——ukPin(此參數(shù)無(wú)需Base64編碼)。provideSigFile格式——http://host:port/*/fileKey(例如:9:8080/doSeal/provideSigFile/fe52a861b1eb4739bbb50cd1c73d72cd.pdf)。fileKey是fe52a861b1eb4739bbb50cd1c73d72cd.pdf,注意不能包含中文字符。簽章完成后,簽章服務(wù)器的返回結(jié)果,也同樣包含此fileKey,通過(guò)它調(diào)用下載接口,就可以下載簽章完成的文件。參數(shù)名說(shuō)明必選signKey接口簽名keyYessignSecret接口簽名秘鑰YesruleName規(guī)則名稱YesprovideSigFile需簽章的文件下載地址YessealUser規(guī)則用章授權(quán)用戶Yespassword規(guī)則用章授權(quán)用戶密碼YesukPinUkeyPIN碼YesfileKey簽章文件key或?qū)?yīng)的任務(wù)IDNoUKey自動(dòng)簽章請(qǐng)求示例引入U(xiǎn)key自動(dòng)簽章JS<title>微簽電子簽章服務(wù)器API演示平臺(tái)</title><linkrel="icon"href="images/FY.ico"type="images/x-ico"/><linkrel="stylesheet"href="css/main.css"><scripttype="text/javascript"src="js/jquery-1.8.3.min.js"></script><scripttype="text/javascript"src="js/base64.js"></script><scripttype="text/javascript"src="js/mToken.js"></script><scripttype="text/javascript"src="js/wqToken.js"></script><scripttype="text/javascript">Ukey自動(dòng)簽章方法對(duì)參數(shù)賦值,注意ukPin無(wú)需Base64編碼,調(diào)用WQ_UkeySignature方法進(jìn)行Ukey自動(dòng)簽章時(shí),傳入ukPin即可。functiondoUKAutoSig(){//參數(shù)賦值let_ruleName=$("#ruleName").val();let_sealUser=$("#sealUser").val();let_signKey=$("#signKey").val();let_password=$("#password").val();let_signSecret=$("#signSecret").val();let_provideSigFile=$("#provideSigFile").val();wqSigServer=_wqSigServer;ruleName=btoa(unescape(encodeURIComponent(_ruleName)));sealUser=btoa(_sealUser);password=btoa(_password);signKey=btoa(_signKey);signSecret=btoa(_signSecret);provideSigFile=btoa((_provideSigFile));letukPin=$("#certPw").val();//調(diào)用WQ_UkeySignature進(jìn)行UKey簽章,只需傳入U(xiǎn)KeyPIN碼WQ_UkeySignature(ukPin);}通過(guò)responseCode、responseData、responseMsg可獲得簽章返回結(jié)果。functiongetSealResult(){if(responseCode==0){//UKey自動(dòng)簽章成功letsigFilePrefix=wqSigServer+'/no/getSealFile/';window.location.href='showSigFile.html?sigFilePrefix='+sigFilePrefix+'&sigFile='+responseData;}else{//UKey自動(dòng)簽章失敗alert(responseMsg);}}返回參數(shù)說(shuō)明(出參)參數(shù)名說(shuō)明responseCode返回的狀態(tài)碼,0是成功,非0是錯(cuò)誤碼responseMsg返回的說(shuō)明信息responseData簽章文件FileKey簽章成功文件下載接口地址與自動(dòng)簽章接口相同,仍為:http://WeiQianSealURL:9999/no/getSealFile/fileKey。具體下載示例,請(qǐng)參考3.8章節(jié)。自動(dòng)簽章規(guī)則接口簽章規(guī)則接口概述通過(guò)調(diào)用接口,程序?qū)?huì)跳轉(zhuǎn)到簽章服務(wù)器的自動(dòng)或手動(dòng)規(guī)則編輯頁(yè)面,進(jìn)行自動(dòng)簽章規(guī)則或手動(dòng)簽章規(guī)則的新建和編輯。新建簽章規(guī)則接口新建簽章規(guī)則接口說(shuō)明新建規(guī)則時(shí)必須提供規(guī)則模板文件的下載地址。首先調(diào)用規(guī)則模板預(yù)處理接口,進(jìn)行模板文件預(yù)處理。模板文件預(yù)處理成功后,再調(diào)用手動(dòng)簽章接口,傳入pageType為2是自動(dòng)簽章規(guī)則,傳入pageType為3是手動(dòng)簽章規(guī)則。模板文件預(yù)處理接口接口地址:http://WeiQianSealURL:9999/manualSig/ruleFilePreprocess請(qǐng)求方式:POST參數(shù)格式:JSON返回格式:JSON請(qǐng)求參數(shù)說(shuō)明(入?yún)ⅲ﹨?shù)名說(shuō)明必選signKey接口簽名keyYessignSecret接口簽名秘鑰YesprovideSigFile規(guī)則模板文件下載地址YessealUser規(guī)則創(chuàng)建用戶Yespassword用戶密碼YesfileKey簽章文件key或?qū)?yīng)的任務(wù)IDNo所有參數(shù)需為Base64編碼,中文編碼為UTF-8,簽章平臺(tái)編碼解碼類為sun.misc.BASE64Decoder和sun.misc.BASE64Encoder。signKey和signSecret由我司商務(wù)部提供。用戶系統(tǒng)提供下載的簽章文件,要指定簽章文件類型,以下三種指定方式必須具備其一。指定方式一,使用fileKey參數(shù),并且參數(shù)中指定文件類型,如:FWBPDtask000000001.pdf。 指定方式二,在提供的下載地址中指定。如: 1:8080/download?id=FWBPDtask000000001.pdf指定方式三,下載接口代碼中指定,使用response.addHeader("Content-Disposition", "attachment;filename=FWBPDtask000000001.pdf")方式。sealUser必須是具有創(chuàng)建規(guī)則權(quán)限用戶。新建簽章規(guī)則接口接口地址:http://WeiQianSealURL:9999/manualSig/getRulePage請(qǐng)求方式:POST返回格式:JSON請(qǐng)求參數(shù)說(shuō)明(入?yún)ⅲ﹕ignKey、signSecret、pageType、callbackUrl、ruleName要求Base64編碼。sigFile為預(yù)處理接口成功完成,返回的data,不需要Base64編碼。參數(shù)名說(shuō)明必選signKey接口簽名keyYessignSecret接口簽名秘鑰YespageType自動(dòng)規(guī)則值為2,手動(dòng)規(guī)則值為3YessigFile預(yù)處理接口成功返回dataYescallbackUrl規(guī)則頁(yè)面返回按鈕的返回地址YesruleName指定規(guī)則名稱No新建簽章規(guī)則示例functionmakeAutoSealRule(){let_sealUser=btoa($("#sealUser").val());let_signKey=btoa($("#signKey").val());let_password=btoa($("#password").val());let_signSecret=btoa($("#signSecret").val());let_provideSigFile=btoa(($("#provideSigFile").val()));let_callbackUrl=btoa(($("#callbackUrl").val()));let_pageType=btoa($("#rule_type").val());let_ruleName=btoa(unescape(encodeURIComponent($("#ruleName").val())));$.ajax({url:_wqSigServer+'/manualSig/ruleFilePreprocess',data:JSON.stringify({password:_password,sealUser:_sealUser,signKey:_signKey,signSecret:_signSecret,provideSigFile:_provideSigFile}),type:'post',dataType:'json',contentType:"application/json;charset=UTF-8",success:function(result){if(result.code==0){letparams={'sigFile':result.data,'signKey':_signKey,'signSecret':_signSecret,'callbackUrl':_callbackUrl,'pageType':_pageType,'ruleName':_ruleName};getManualSigPage(params);}else{alert(result.msg);}},});}functiongetManualSigPage(params){vartemp_form=document.createElement("form");temp_form.action=_wqSigServer+'/manualSig/getRulePage';temp_form.target="_self";temp_form.method="post";temp_form.style.display="none";for(varxinparams){varopt=document.createElement("textarea");=x;opt.value=params[x];temp_form.appendChild(opt);}document.body.appendChild(temp_form);temp_form.submit();}返回參數(shù)說(shuō)明(出參)參數(shù)名說(shuō)明code返回的狀態(tài)碼,0是成功,非0是錯(cuò)誤碼msg返回的說(shuō)明信息data簽章文件FileKeytimestamp返回結(jié)果的時(shí)間戳編輯簽章規(guī)則接口編輯簽章規(guī)則接口說(shuō)明提供具有編輯簽章規(guī)則權(quán)限用戶和規(guī)則名稱。調(diào)用規(guī)則編輯接口,就會(huì)跳轉(zhuǎn)到簽章服務(wù)器編輯簽章規(guī)則頁(yè)面。規(guī)則編輯接口描述接口地址:http://WeiQianSealURL:9999/manualSig/ruleUpdatePage請(qǐng)求方式:GET返回格式:JSON參數(shù)名說(shuō)明必選signKey接口簽名keyYessignSecret接口簽名秘鑰YesruleName規(guī)則名稱YescallbackUrl規(guī)則頁(yè)面返回按鈕的返回地址YessealUser編輯規(guī)則用戶Yespassword用戶密碼YesruleFile文件預(yù)處理接口成功返回dataYes請(qǐng)求參數(shù)說(shuō)明(入?yún)ⅲ┧袇?shù)需為Base64編碼,中文編碼為UTF-8,簽章平臺(tái)編碼解碼類為sun.misc.BASE64Decoder和sun.misc.BASE64Encoder。signKey和signSecret由我司商務(wù)部提供。sealUser必須是具有創(chuàng)建規(guī)則權(quán)限用戶。ruleFile為預(yù)處理接口成功完成返回data,不需要Base64編碼。編輯簽章規(guī)則示例functioneditAutoSealRule(){let_signKey=btoa($("#signKey").val());let_signSecret=btoa($("#signSecret").val());let_ruleName=btoa(unescape(encodeURIComponent($("#ruleName").val())));let_sealUser=btoa($("#sealUser").val());let_password=btoa($("#password").val());$.ajax({url:_wqSigServer+'/manualSig/preprocessRule',data:JSON.stringify({signKey:_signKey,signSecret:_signSecret,ruleName:_ruleName,sealUser:_sealUser,password:_password}),type:'post',dataType:'json',contentType:"application/json;charset=UTF-8",success:function(result){if(result.code==0){let_callbackUrl=btoa(($("#callbackUrl").val()));window.location.href=_wqSigServer+'/manualSig/ruleUpdatePage?signKey='+_signKey+'&signSecret='+_signSecret+'&callbackUrl='+_callbackUrl+'&ruleFile='+result.data;}else{alert(result.msg);}}});}簽章分頁(yè)查詢接口5.1簽章分頁(yè)查詢接口概述通過(guò)調(diào)用接口,可以分頁(yè)查詢指定用戶個(gè)人授權(quán)簽章信息或綁定的所有用戶組授權(quán)的簽章信息。5.2簽章分頁(yè)接口描述接口地址:http://WeiQianSealURL:9999/no/getPagedSealList請(qǐng)求方式:POST參數(shù)格式:JSON返回格式:JSON5.3請(qǐng)求參數(shù)說(shuō)明(入?yún)ⅲ﹨?shù)名說(shuō)明必選signKey接口簽名keyYessignSecret接口簽名秘鑰YessealUser簽章授權(quán)用戶Yespassword授權(quán)用戶密碼YessealType簽章授權(quán)類型NosealName簽章名稱模糊搜索NopageNum分頁(yè)查詢頁(yè)碼NopageSeals分頁(yè)查詢每頁(yè)簽章數(shù)No所有參數(shù)需為Base64編碼,中文編碼為UTF-8,簽章平臺(tái)編碼解碼類為sun.misc.BASE64Decoder和sun.misc.BASE64Encoder。signKey和signSecret由我司商務(wù)部提供。非必須參數(shù)sealType,默認(rèn)值為0(查詢個(gè)人授權(quán)章),值為1(查詢用戶組簽章)。注意:用戶組授權(quán)簽章不能修改密碼和啟用禁用密碼,需管理員登錄后臺(tái)統(tǒng)一設(shè)置整個(gè)用戶組簽章密碼。非必須參數(shù)pageNum和pageSeals默認(rèn)值分別為1和10。5.4簽章分頁(yè)查詢前端示例functiongetPagedSealList(){let_sealUser=btoa($("#sealUser").val());let_password=btoa($("#password").val());let_pageNum=btoa($("#pageNum").val());let_pageSeals=btoa($("#pageSeals").val());let_signKey=btoa($("#signKey").val());let_signSecret=btoa($("#signSecret").val());let_sealName=btoa(unescape(encodeURIComponent($("#sealName").val())));let_sealType=btoa(($("#sealType").val()));$.ajax({url:_wqSigServer+'/no/getPagedSealList',data:JSON.stringify({sealUser:_sealUser,password:_password,signKey:_signKey,signSecret:_signSecret,pageNum:_pageNum,pageSeals:_pageSeals,sealType:_sealType,sealName:_sealName}),type:'post',dataType:'json',contentType:"application/json;charset=UTF-8",success:function(result){if(result.code==0){letdata=result.data;console.log(data);if(data.length==0){alert('用戶沒(méi)有任務(wù)簽章授權(quán)!')}else{sessionStorage.setItem('pageSeals',JSON.stringify(data));window.location.href='showSealTable.html';}}else{alert(result.msg);}},});}5.5返回參數(shù)說(shuō)明(出參)參數(shù)名說(shuō)明code返回的狀態(tài)碼,0是成功,非0是錯(cuò)誤碼msg返回的說(shuō)明信息data簽章分頁(yè)數(shù)據(jù)timestamp返回結(jié)果的時(shí)間戳查詢成功返回的分頁(yè)數(shù)據(jù)data為數(shù)組每條數(shù)據(jù)中簽章信息有isealId、sealName、enabledPw(啟用密碼0,禁用密碼1)、keepPw(不記住密碼0,記住密碼1)、sealFile(Base64碼簽章圖片)。簽章密碼功能接口6.1簽章密碼功能接口概述調(diào)用此接口可以修改個(gè)人授權(quán)簽章密碼功能,但是對(duì)于用戶組授權(quán)簽章無(wú)效。6.2簽章密碼功能接口描述接口地址:http://WeiQianSealURL:9999/no/editSealPassword請(qǐng)求方式:POST參數(shù)格式:JSON返回格式:JSON6.3請(qǐng)求參數(shù)說(shuō)明(入?yún)ⅲ﹨?shù)名說(shuō)明必選signKey接口簽名keyYessignSecret接口簽名秘鑰YessealUser簽章授權(quán)用戶YessealId簽章IDYespassword簽章密碼(不是用戶賬號(hào)密碼)YesnewPassword簽章新密碼(不修改密碼可不提供)NoenabledPw啟用/禁用簽章密碼NokeepPw是否記住密碼No所有參數(shù)需為Base64編碼,中文編碼為UTF-8,簽章平臺(tái)編碼解碼類為sun.misc.BASE64Decoder和sun.misc.BASE64Encoder。signKey和signSecret由我司商務(wù)部提供。非必須參數(shù)newPassword,不需要修改簽章密碼,只想啟用或禁用密碼功能,或只想記住密碼時(shí),就不用提供。如果提供newPassword就認(rèn)為用戶是想要修改簽章密碼。非必須參數(shù)enabledPw(禁用密碼0,啟用密碼1)默認(rèn)禁用密碼。非必須參數(shù)keepPw(不記住密碼0,記住密碼1)默認(rèn)不記住密碼。當(dāng)用戶修改值為記住密碼時(shí),此時(shí)就算啟用了密碼功能,在簽章頁(yè)面也不會(huì)要求輸入密碼。6.4簽章密碼功能接口前端示例functioneditSealPassword(){let_sealId=btoa($("#sealId").val());let_sealUser=btoa($("#sealUser").val());let_password=btoa($("#password").val());let_signKey=btoa($("#signKey").val());let_signSecret=btoa($("#signSecret").val());let_newPassword=btoa(($("#newPassword").val()));let_enabledPw=btoa(($("#enabledPw").val()));let_keepPw=btoa(($("#keepPw").val()));$.ajax({url:_wqSigServer+'/no/editSealPassword',data:JSON.stringify({sealId:_sealId,sealUser:_sealUser,password:_password,signKey:_signKey,signSecret:_signSecret,newPassword:_newPassword,enabledPw:_enabledPw,keepPw:_keepPw}),type:'post',dataType:'json',contentType:"application/json;charset=UTF-8",success:function(result){alert(result.msg);},

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論