Vantage 的 JavaScript 解释器支持 ECMAScript 5.1 (ES5) 以及少量其他更现代的标准。有关更多信息,请参见此处)。
- 脚本可用于编写自定义函数。
- 脚本不能用于向除 Vantage 数据目录之外的数据库发送请求,对这些数据目录的访问通过 Context 接口提供。
- 脚本可通过 Context 接口向外部服务发送请求。
- 脚本不支持诸如 jQuery 等第三方库。
脚本规则在可占用的内存和处理时间方面受到限制,同时对代码中的语句数量和递归深度也有限制。这样做是为了降低脚本无响应的风险。如果您的脚本规则不满足一项或多项限制,处理将因错误而中断。限制值由系统管理员在设置 ABBYY Vantage 服务器期间进行配置。目前,默认值如下:
- 内存:500 MB
- 脚本运行时间:600 秒 × 事务中文档页面总数
- 表达式:1000000 × 事务中文档页面总数
- 最大递归深度:100
- 最大数组大小:50000
- 脚本中可执行的 HTTP 请求最大数量:200 × 事务中文档页面总数
在执行脚本时,可能会发生错误。
- 如果在脚本中检测到语法错误,自定义活动的事务会被中断。可以在 技能监控 中查看错误描述。
- 如果在脚本运行时抛出异常,脚本和事务都会被中断。可以在 技能监控 中查看错误描述。
- 如果使用 try-catch 结构捕获了程序异常,则错误处理逻辑由脚本作者自行决定。
由于超出脚本限制而引起的错误不会被捕获。在这种情况下,脚本和相应的事务都会被中断。
请参阅以下帮助主题,了解可用的对象和枚举类型: