Appearance
PDF安全电子印章服务器版接口
概述
本节介绍软航OFFICE文档控件PDF安全电子印章服务器版接口,这些接口允许开发者在服务器环境中控制PDF文档中电子印章的各种功能和行为,为PDF文档管理系统提供完整的服务器版电子印章控制能力。
注意: 本节所介绍的PDF安全电子印章接口均需要单独购买PDF电子印章产品才能调用。
服务器连接属性
SvrIsLogin
说明:
布尔型;只读;返回是否已经从服务器登录。
语法:
javascript
// 读取
varObj = plugInObj.SvrIsLogin;
使用示例:
javascript
// 基本用法
var plugInObj = OfficeControlObj.ActiveDocument;
// 检查服务器登录状态
var isLogin = plugInObj.SvrIsLogin;
console.log("服务器登录状态:", isLogin);
// 根据登录状态执行不同操作
if (isLogin) {
console.log("已登录服务器,可以执行印章操作");
// 执行印章操作
} else {
console.log("未登录服务器,需要先登录");
// 执行登录操作
}
SvrUrl
说明:
String型字符串;可读写;返回或者设置配置的服务器URL地址。
语法:
javascript
// 设置
plugInObj.SvrUrl = URLSTR;
// 读取
varObj = plugInObj.SvrUrl;
注意: URL字符串必须以"/"符号结尾,如:http://192.168.0.224:1986/ntkoSignServer/
使用示例:
javascript
// 基本用法
var plugInObj = OfficeControlObj.ActiveDocument;
// 设置服务器URL
plugInObj.SvrUrl = "http://192.168.0.224:1986/ntkoSignServer/";
console.log("服务器URL已设置");
// 读取服务器URL
var serverUrl = plugInObj.SvrUrl;
console.log("当前服务器URL:", serverUrl);
服务器配置方法
SvrShowConfig
语法:
javascript
SvrShowConfig()
功能:
弹出服务器的系统设置窗口。
返回值:
无返回值
说明:
弹出服务器的系统设置窗口,用户可以在配置窗口中设置服务器URL,并测试服务器连接,以及设置盖章时使用的默认密码。
使用示例:
javascript
// 基本用法
var plugInObj = OfficeControlObj.ActiveDocument;
// 显示服务器配置窗口
plugInObj.SvrShowConfig();
console.log("服务器配置窗口已显示");
服务器印章方法
SvrAddSecHandsign
语法:
javascript
SvrAddSecHandsign([password], [IsUserSetPosition], [PageNumber], [PosX], [PosY], [v_UserData], [v_IsUsePrintCopy])
功能:
给PDF文档添加服务器手写签名。
参数:
名称 | 必选/可选 | 数据类型 | 说明 |
---|---|---|---|
password | 可选 | string | 默认签章密码 |
IsUserSetPosition | 可选 | long | 是否允许用户自定义签章位置 |
PageNumber | 可选 | long | 签章的页码 |
PosX | 可选 | long | 签章所在的X坐标 |
PosY | 可选 | long | 签章所在的Y坐标 |
v_UserData | 可选 | string | 自定义用户数据 |
v_IsUsePrintCopy | 可选 | bool | 是否启动打印份数控制 |
返回值:
无返回值
说明:
给PDF文档添加服务器手写签名。参数IsUserSetPosition:取值1或0,为1时,后面三个参数才会有效。参数PageNumber:盖章的页码,第一页取值为0。参数v_UserData:可以给印章添加自定义的用户数据字符串。
使用示例:
javascript
// 基本用法
var plugInObj = OfficeControlObj.ActiveDocument;
// 添加服务器手写签名
plugInObj.SvrAddSecHandsign("111111", 1, 0, 500, 500, "用户数据", true);
// 添加服务器手写签名(不设置位置)
plugInObj.SvrAddSecHandsign("111111", 0, 0, 0, 0, "用户数据", false);
SvrAddSecKeyboardComment
语法:
javascript
SvrAddSecKeyboardComment([password], [IsUserSetPosition], [PageNumber], [PosX], [PosY], [v_UserData], [v_IsUsePrintCopy])
功能:
给PDF文档添加服务器键盘批注。
参数:
名称 | 必选/可选 | 数据类型 | 说明 |
---|---|---|---|
password | 可选 | string | 默认签章密码 |
IsUserSetPosition | 可选 | long | 是否允许用户自定义签章位置 |
PageNumber | 可选 | long | 签章的页码 |
PosX | 可选 | long | 签章所在的X坐标 |
PosY | 可选 | long | 签章所在的Y坐标 |
v_UserData | 可选 | string | 自定义用户数据 |
v_IsUsePrintCopy | 可选 | bool | 是否启动打印份数控制 |
返回值:
无返回值
说明:
给PDF文档添加服务器键盘批注。参数IsUserSetPosition:取值1或0,为1时,后面三个参数才会有效。参数PageNumber:盖章的页码,第一页取值为0。参数v_UserData:可以给印章添加自定义的用户数据字符串。
使用示例:
javascript
// 基本用法
var plugInObj = OfficeControlObj.ActiveDocument;
// 添加服务器键盘批注
plugInObj.SvrAddSecKeyboardComment("111111", 1, 0, 500, 500, "用户数据", true);
// 添加服务器键盘批注(不设置位置)
plugInObj.SvrAddSecKeyboardComment("111111", 0, 0, 0, 0, "用户数据", false);
SvrAddSecEkeySign
语法:
javascript
SvrAddSecEkeySign([password], [v_IsUserSetPosition], [v_PageNumber], [v_PosX], [v_PosY], [v_UserData], [v_IsUsePrintCopy])
功能:
给PDF文档添加服务器EKEY盖章。
参数:
名称 | 必选/可选 | 数据类型 | 说明 |
---|---|---|---|
password | 可选 | string | 默认签章密码 |
IsUserSetPosition | 可选 | long | 是否允许用户自定义签章位置 |
PageNumber | 可选 | long | 签章的页码 |
PosX | 可选 | long | 签章所在的X坐标 |
PosY | 可选 | long | 签章所在的Y坐标 |
v_UserData | 可选 | string | 自定义用户数据 |
v_IsUsePrintCopy | 可选 | bool | 是否启动打印份数控制 |
返回值:
无返回值
说明:
给PDF文档添加服务器EKEY盖章。参数IsUserSetPosition:取值1或0,为1时,后面三个参数才会有效。参数PageNumber:盖章的页码,第一页取值为0。参数v_UserData:可以给印章添加自定义的用户数据字符串。
使用示例:
javascript
// 基本用法
var plugInObj = OfficeControlObj.ActiveDocument;
// 添加服务器EKEY盖章
plugInObj.SvrAddSecEkeySign("111111", 1, 0, 500, 500, "用户数据", true);
// 添加服务器EKEY盖章(不设置位置)
plugInObj.SvrAddSecEkeySign("111111", 0, 0, 0, 0, "用户数据", false);
SvrAddSecsign
语法:
javascript
SvrAddSecsign([password], [IsUserSetPosition], [PageNumber], [PosX], [PosY], [v_UserData], [v_IsUsePrintCopy])
功能:
给PDF文档添加服务器盖章。
参数:
名称 | 必选/可选 | 数据类型 | 说明 |
---|---|---|---|
password | 可选 | string | 默认签章密码 |
IsUserSetPosition | 可选 | long | 是否允许用户自定义签章位置 |
PageNumber | 可选 | long | 签章的页码 |
PosX | 可选 | long | 签章所在的X坐标 |
PosY | 可选 | long | 签章所在的Y坐标 |
v_UserData | 可选 | string | 自定义用户数据 |
v_IsUsePrintCopy | 可选 | bool | 是否启动打印份数控制 |
返回值:
无返回值
说明:
给PDF文档添加服务器盖章。参数IsUserSetPosition:取值1或0,为1时,后面三个参数才会有效。参数PageNumber:盖章的页码,第一页取值为0。参数v_UserData:可以给印章添加自定义的用户数据字符串。
使用示例:
javascript
// 基本用法
var plugInObj = OfficeControlObj.ActiveDocument;
// 添加服务器盖章
plugInObj.SvrAddSecsign("111111", 1, 0, 500, 500, "用户数据", true);
// 添加服务器盖章(不设置位置)
plugInObj.SvrAddSecsign("111111", 0, 0, 0, 0, "用户数据", false);
SvrAddSecPerpagesign
语法:
javascript
SvrAddSecPerpagesign([password], [IsUserSetPosition], [PosX], [PosY], [v_UserData], [v_IsUsePrintCopy])
功能:
给PDF文档添加服务器校核章。
参数:
名称 | 必选/可选 | 数据类型 | 说明 |
---|---|---|---|
password | 可选 | string | 默认签章密码 |
IsUserSetPosition | 可选 | long | 是否允许用户自定义签章位置 |
PosX | 可选 | long | 签章所在的X坐标 |
PosY | 可选 | long | 签章所在的Y坐标 |
v_UserData | 可选 | string | 自定义用户数据 |
v_IsUsePrintCopy | 可选 | bool | 是否启动打印份数控制 |
返回值:
无返回值
说明:
给PDF文档添加服务器校核章。参数IsUserSetPosition:取值1或0,为1时,后面两个参数才会有效。参数v_UserData:可以给印章添加自定义的用户数据字符串。
使用示例:
javascript
// 基本用法
var plugInObj = OfficeControlObj.ActiveDocument;
// 添加服务器校核章
plugInObj.SvrAddSecPerpagesign("111111", 1, 500, 500, "用户数据", true);
// 添加服务器校核章(不设置位置)
plugInObj.SvrAddSecPerpagesign("111111", 0, 0, 0, "用户数据", false);
SvrAddSecBarcode
语法:
javascript
SvrAddSecBarcode([password], [barCodeType], [barcodeStringdata], [gbDefualtSetString], [IsUserSetPosition], [PageNumber], [PosX], [PosY], [v_UserData], [v_IsUsePrintCopy])
功能:
给PDF文档添加服务器二维条码印章。
参数:
名称 | 必选/可选 | 数据类型 | 说明 |
---|---|---|---|
password | 可选 | string | 默认签章密码 |
barCodeType | 可选 | long | 二维码类型 |
barcodeStringdata | 可选 | string | 条码信息字符串 |
gbDefualtSetString | 可选 | string | 国标PDF417码信息字符串 |
IsUserSetPosition | 可选 | long | 是否允许用户自定义签章位置 |
PageNumber | 可选 | long | 签章的页码 |
PosX | 可选 | long | 签章所在的X坐标 |
PosY | 可选 | long | 签章所在的Y坐标 |
v_UserData | 可选 | string | 自定义用户数据 |
v_IsUsePrintCopy | 可选 | bool | 是否启动打印份数控制 |
返回值:
无返回值
说明:
给PDF文档添加服务器二维条码印章。参数IsUserSetPosition:取值1或0,为1时,后面三个参数才会有效。参数PageNumber:盖章的页码,第一页取值为0。参数v_UserData:可以给印章添加自定义的用户数据字符串。
使用示例:
javascript
// 基本用法
var plugInObj = OfficeControlObj.ActiveDocument;
// 添加服务器二维条码印章
plugInObj.SvrAddSecBarcode("111111", 2, "条码信息", "国标信息", 1, 0, 500, 500, "用户数据", true);
// 添加服务器二维条码印章(不设置位置)
plugInObj.SvrAddSecBarcode("111111", 1, "条码信息", "", 0, 0, 0, 0, "用户数据", false);
SvrAddSecCrossTwoPagesign
语法:
javascript
SvrAddSecCrossTwoPagesign([password], [v_UserData], [v_IsUsePrintCopy])
功能:
给PDF文档添加对称骑缝章。
参数:
名称 | 必选/可选 | 数据类型 | 说明 |
---|---|---|---|
password | 可选 | string | 默认签章密码 |
v_UserData | 可选 | string | 自定义用户数据 |
v_IsUsePrintCopy | 可选 | bool | 是否启动打印份数控制 |
返回值:
无返回值
说明:
给PDF文档添加对称骑缝章。参数v_UserData:可以给印章添加自定义的用户数据字符串。
使用示例:
javascript
// 基本用法
var plugInObj = OfficeControlObj.ActiveDocument;
// 添加对称骑缝章
plugInObj.SvrAddSecCrossTwoPagesign("111111", "用户数据", true);
// 添加对称骑缝章(不启动打印份数控制)
plugInObj.SvrAddSecCrossTwoPagesign("111111", "用户数据", false);
SvrAddSecCrossMuliPagesign
语法:
javascript
SvrAddSecCrossMuliPagesign([password], [v_UserData], [v_IsUsePrintCopy])
功能:
给PDF文档添加单侧骑缝章。
参数:
名称 | 必选/可选 | 数据类型 | 说明 |
---|---|---|---|
password | 可选 | string | 默认签章密码 |
v_UserData | 可选 | string | 自定义用户数据 |
v_IsUsePrintCopy | 可选 | bool | 是否启动打印份数控制 |
返回值:
无返回值
说明:
给PDF文档添加单侧骑缝章。参数v_UserData:可以给印章添加自定义的用户数据字符串。
使用示例:
javascript
// 基本用法
var plugInObj = OfficeControlObj.ActiveDocument;
// 添加单侧骑缝章
plugInObj.SvrAddSecCrossMuliPagesign("111111", "用户数据", true);
// 添加单侧骑缝章(不启动打印份数控制)
plugInObj.SvrAddSecCrossMuliPagesign("111111", "用户数据", false);
服务器登录方法
SvrDoLogin
语法:
javascript
SvrDoLogin(username, password, bUseEkey)
功能:
登录印章服务器。
参数:
名称 | 必选/可选 | 数据类型 | 说明 |
---|---|---|---|
username | 必选 | string | 登录用户名 |
password | 必选 | string | 登录密码 |
bUseEkey | 必选 | bool | 是否使用EKEY登录 |
返回值:
布尔型;是否登录成功
说明:
登录印章服务器。如果参数username或者password为""空字符串,则会弹出登录框。如果设置参数bUseEkey为true,前面2个参数均无用。
使用示例:
javascript
// 基本用法
var plugInObj = OfficeControlObj.ActiveDocument;
// 登录服务器
var isLogin = plugInObj.SvrDoLogin("", "", false);
console.log("服务器登录结果:", isLogin);
// 使用用户名密码登录
var isLogin = plugInObj.SvrDoLogin("admin", "123456", false);
console.log("服务器登录结果:", isLogin);
// 使用EKEY登录
var isLogin = plugInObj.SvrDoLogin("", "", true);
console.log("EKEY登录结果:", isLogin);
SvrDoLogout
语法:
javascript
SvrDoLogout()
功能:
从服务器注销。
返回值:
无返回值
说明:
从服务器注销。
使用示例:
javascript
// 基本用法
var plugInObj = OfficeControlObj.ActiveDocument;
// 从服务器注销
plugInObj.SvrDoLogout();
console.log("已从服务器注销");
SvrCheckSecsigns
语法:
javascript
SvrCheckSecsigns()
功能:
检查文档中的服务器印章。
返回值:
无返回值
说明:
检查文档中的服务器印章。
使用示例:
javascript
// 基本用法
var plugInObj = OfficeControlObj.ActiveDocument;
// 检查文档中的服务器印章
plugInObj.SvrCheckSecsigns();
console.log("服务器印章检查完成");
方法分类总结
分类 | 方法 | 功能 | 说明 |
---|---|---|---|
服务器连接 | SvrIsLogin | 登录状态 | 检查是否已登录服务器 |
服务器连接 | SvrUrl | 服务器URL | 设置/读取服务器URL地址 |
服务器配置 | SvrShowConfig | 显示配置窗口 | 弹出服务器系统设置窗口 |
服务器印章 | SvrAddSecHandsign | 手写签名 | 添加服务器手写签名 |
服务器印章 | SvrAddSecKeyboardComment | 键盘批注 | 添加服务器键盘批注 |
服务器印章 | SvrAddSecEkeySign | EKEY盖章 | 添加服务器EKEY盖章 |
服务器印章 | SvrAddSecsign | 服务器盖章 | 添加服务器盖章 |
服务器印章 | SvrAddSecPerpagesign | 校核章 | 添加服务器校核章 |
服务器印章 | SvrAddSecBarcode | 二维条码 | 添加服务器二维条码印章 |
服务器印章 | SvrAddSecCrossTwoPagesign | 对称骑缝章 | 添加对称骑缝章 |
服务器印章 | SvrAddSecCrossMuliPagesign | 单侧骑缝章 | 添加单侧骑缝章 |
服务器登录 | SvrDoLogin | 登录服务器 | 登录印章服务器 |
服务器登录 | SvrDoLogout | 注销服务器 | 从服务器注销 |
服务器登录 | SvrCheckSecsigns | 检查印章 | 检查文档中的服务器印章 |
使用流程
1. 基本服务器版印章管理流程
javascript
// 基本服务器版印章管理流程
function basicServerSignManagement() {
var plugInObj = OfficeControlObj.ActiveDocument;
// 设置服务器URL
function setServerUrl() {
plugInObj.SvrUrl = "http://192.168.0.224:1986/ntkoSignServer/";
console.log("服务器URL已设置");
}
// 登录服务器
function loginServer() {
var isLogin = plugInObj.SvrDoLogin("admin", "123456", false);
if (isLogin) {
console.log("服务器登录成功");
} else {
console.log("服务器登录失败");
}
return isLogin;
}
// 添加服务器印章
function addServerSign() {
if (plugInObj.SvrIsLogin) {
plugInObj.SvrAddSecsign("111111", 1, 0, 500, 500, "用户数据", true);
console.log("服务器印章添加完成");
} else {
console.log("请先登录服务器");
}
}
return {
setServerUrl: setServerUrl,
loginServer: loginServer,
addServerSign: addServerSign
};
}
2. 高级服务器版印章管理流程
javascript
// 高级服务器版印章管理流程
function advancedServerSignManagement() {
var plugInObj = OfficeControlObj.ActiveDocument;
// 服务器版印章管理配置
var serverSignConfig = {
serverUrl: "http://192.168.0.224:1986/ntkoSignServer/",
username: "admin",
password: "123456",
enableHandSign: true,
enableKeyboardComment: true,
enableEkeySign: true,
enableServerSign: true
};
// 应用服务器版印章配置
function applyServerSignConfig() {
try {
// 设置服务器URL
plugInObj.SvrUrl = serverSignConfig.serverUrl;
// 登录服务器
var isLogin = plugInObj.SvrDoLogin(serverSignConfig.username, serverSignConfig.password, false);
if (isLogin) {
console.log("服务器登录成功");
// 根据配置启用相应功能
if (serverSignConfig.enableHandSign) {
console.log("手写签名功能已启用");
}
if (serverSignConfig.enableKeyboardComment) {
console.log("键盘批注功能已启用");
}
if (serverSignConfig.enableEkeySign) {
console.log("EKEY盖章功能已启用");
}
if (serverSignConfig.enableServerSign) {
console.log("服务器盖章功能已启用");
}
} else {
console.log("服务器登录失败");
}
console.log("服务器版印章配置应用成功");
} catch (error) {
console.error("服务器版印章配置应用失败:", error);
}
}
// 监控服务器状态
function monitorServerStatus() {
var status = {
isLogin: plugInObj.SvrIsLogin,
serverUrl: plugInObj.SvrUrl,
signsCount: plugInObj.GetSignsCount()
};
console.log("服务器状态监控:", status);
return status;
}
return {
applyServerSignConfig: applyServerSignConfig,
monitorServerStatus: monitorServerStatus
};
}
3. 服务器版印章质量控制流程
javascript
// 服务器版印章质量控制流程
function serverSignQualityControl() {
var plugInObj = OfficeControlObj.ActiveDocument;
// 服务器版印章质量控制
function controlServerSignQuality() {
var signQuality = {
totalSigns: 0,
validSigns: 0,
invalidSigns: 0,
qualityScore: 0
};
signQuality.totalSigns = plugInObj.GetSignsCount();
for (var i = 1; i <= signQuality.totalSigns; i++) {
var pdfSignObj = plugInObj.GetSign(i);
if (pdfSignObj && pdfSignObj.SignerName) {
signQuality.validSigns++;
} else {
signQuality.invalidSigns++;
}
}
if (signQuality.totalSigns > 0) {
signQuality.qualityScore = (signQuality.validSigns / signQuality.totalSigns) * 100;
}
console.log("服务器版印章质量控制:", signQuality);
return signQuality;
}
// 执行质量控制
var qualityResult = controlServerSignQuality();
console.log("服务器版印章质量控制结果:", qualityResult);
}
完整示例
1. 基础服务器版印章管理
javascript
// 基础服务器版印章管理示例
function basicServerSignManagement() {
var plugInObj = OfficeControlObj.ActiveDocument;
// 设置服务器URL
function setServerUrl() {
plugInObj.SvrUrl = "http://192.168.0.224:1986/ntkoSignServer/";
console.log("服务器URL已设置");
}
// 登录服务器
function loginServer() {
var isLogin = plugInObj.SvrDoLogin("admin", "123456", false);
if (isLogin) {
console.log("服务器登录成功");
} else {
console.log("服务器登录失败");
}
return isLogin;
}
// 添加服务器印章
function addServerSign() {
if (plugInObj.SvrIsLogin) {
plugInObj.SvrAddSecsign("111111", 1, 0, 500, 500, "用户数据", true);
console.log("服务器印章添加完成");
} else {
console.log("请先登录服务器");
}
}
return {
setServerUrl: setServerUrl,
loginServer: loginServer,
addServerSign: addServerSign
};
}
2. 高级服务器版印章管理
javascript
// 高级服务器版印章管理示例
function advancedServerSignManagement() {
var plugInObj = OfficeControlObj.ActiveDocument;
// 服务器版印章管理配置
var serverSignConfig = {
serverUrl: "http://192.168.0.224:1986/ntkoSignServer/",
username: "admin",
password: "123456",
enableHandSign: true,
enableKeyboardComment: true,
enableEkeySign: true,
enableServerSign: true
};
// 应用服务器版印章配置
function applyServerSignConfig() {
plugInObj.SvrUrl = serverSignConfig.serverUrl;
var isLogin = plugInObj.SvrDoLogin(serverSignConfig.username, serverSignConfig.password, false);
if (isLogin) {
console.log("服务器登录成功");
if (serverSignConfig.enableHandSign) {
console.log("手写签名功能已启用");
}
if (serverSignConfig.enableKeyboardComment) {
console.log("键盘批注功能已启用");
}
if (serverSignConfig.enableEkeySign) {
console.log("EKEY盖章功能已启用");
}
if (serverSignConfig.enableServerSign) {
console.log("服务器盖章功能已启用");
}
} else {
console.log("服务器登录失败");
}
console.log("服务器版印章配置应用完成");
}
// 监控服务器状态
function monitorServerStatus() {
var status = {
isLogin: plugInObj.SvrIsLogin,
serverUrl: plugInObj.SvrUrl,
signsCount: plugInObj.GetSignsCount()
};
console.log("服务器状态:", status);
return status;
}
return {
applyServerSignConfig: applyServerSignConfig,
monitorServerStatus: monitorServerStatus
};
}
3. 服务器版印章质量控制
javascript
// 服务器版印章质量控制示例
function serverSignQualityControl() {
var plugInObj = OfficeControlObj.ActiveDocument;
// 服务器版印章质量控制
function controlServerSignQuality() {
var signQuality = {
totalSigns: 0,
validSigns: 0,
invalidSigns: 0,
qualityScore: 0
};
signQuality.totalSigns = plugInObj.GetSignsCount();
for (var i = 1; i <= signQuality.totalSigns; i++) {
var pdfSignObj = plugInObj.GetSign(i);
if (pdfSignObj && pdfSignObj.SignerName) {
signQuality.validSigns++;
} else {
signQuality.invalidSigns++;
}
}
if (signQuality.totalSigns > 0) {
signQuality.qualityScore = (signQuality.validSigns / signQuality.totalSigns) * 100;
}
console.log("服务器版印章质量控制:", signQuality);
return signQuality;
}
// 执行质量控制
var qualityResult = controlServerSignQuality();
console.log("服务器版印章质量控制结果:", qualityResult);
}
注意事项
- 产品要求:PDF安全电子印章接口需要单独购买PDF电子印章产品才能调用
- 服务器连接:确保服务器URL正确且服务器可访问
- 登录状态:在执行印章操作前确保已登录服务器
- 参数验证:验证服务器版印章方法参数的有效性,避免空值或无效值
- 错误处理:实现完善的错误处理机制
- 性能考虑:避免频繁调用服务器版印章方法
- 资源管理:及时清理不需要的资源
错误处理
javascript
// 服务器版印章方法错误处理
function handleServerSignMethodError(methodType, error) {
console.error("服务器版印章方法处理失败:", methodType, error.message);
switch(methodType) {
case 'SvrDoLogin':
console.log("服务器登录失败,请检查:");
console.log("1. 服务器URL是否正确");
console.log("2. 用户名密码是否正确");
console.log("3. 服务器是否可访问");
break;
case 'SvrAddSecsign':
console.log("服务器盖章失败,请检查:");
console.log("1. 是否已登录服务器");
console.log("2. 印章参数是否正确");
console.log("3. 服务器状态是否正常");
break;
case 'SvrAddSecHandsign':
console.log("服务器手写签名失败,请检查:");
console.log("1. 手写签名设备是否正常");
console.log("2. 签名位置是否正确");
console.log("3. 服务器连接是否正常");
break;
default:
console.log("未知服务器版印章方法处理失败");
}
}
最佳实践
1. 服务器版印章管理最佳实践
javascript
// 服务器版印章管理最佳实践
function serverSignManagementBestPractice() {
// 服务器版印章管理配置
var serverSignConfig = {
enableLogging: true,
enableValidation: true,
enableErrorHandling: true,
enableQualityControl: true
};
// 应用服务器版印章管理配置
function applyServerSignConfig() {
try {
// 设置服务器版印章管理处理
if (serverSignConfig.enableLogging) {
console.log("服务器版印章管理日志已启用");
}
if (serverSignConfig.enableValidation) {
console.log("服务器版印章验证已启用");
}
console.log("服务器版印章管理配置应用成功");
} catch (error) {
handleServerSignMethodError('applyServerSignConfig', error);
}
}
// 应用配置
applyServerSignConfig();
}
2. 服务器版印章质量控制最佳实践
javascript
// 服务器版印章质量控制最佳实践
function serverSignQualityControlBestPractice() {
// 服务器版印章质量控制
function controlServerSignQuality() {
try {
// 服务器版印章质量控制
var signQuality = {
totalSigns: 0,
validSigns: 0,
invalidSigns: 0,
qualityScore: 0
};
// 计算质量分数
if (signQuality.totalSigns > 0) {
signQuality.qualityScore = (signQuality.validSigns / signQuality.totalSigns) * 100;
}
console.log("服务器版印章质量控制完成:", signQuality);
return signQuality;
} catch (error) {
console.error("服务器版印章质量控制失败:", error.message);
return null;
}
}
// 执行质量控制
var qualityResult = controlServerSignQuality();
console.log("服务器版印章质量控制结果:", qualityResult);
}
技术要点
- 产品要求:PDF安全电子印章接口需要单独购买PDF电子印章产品才能调用
- 服务器连接:确保服务器URL正确且服务器可访问
- 登录状态:在执行印章操作前确保已登录服务器
- 参数验证:验证服务器版印章方法参数的有效性,避免空值或无效值
- 错误处理:完善的错误处理机制
- 性能优化:避免频繁调用服务器版印章方法
- 资源管理:及时清理不需要的资源