Rhino Javascript -如何为异常堆栈跟踪标记字符串源
Rhino Javascript - how to label a string source for exception stacktrace
我们使用Rhino Javascript (JDK7解释模式),从scriptenengine .eval(String)和Javascript中使用eval(String)大量使用"eval"。我们认识到eval可能存在安全问题……但除此之外…
当抛出一个异常时,它最终被java捕获,java堆栈跟踪在第7行打印出类似:(#7)的内容。
源名称未知是有意义的,因为我们只是给了它一个字符串给eval。
然而,是否有任何方法将标签附加到给定的eval,以便它将在堆栈跟踪中提供更好的提示?比如:
String jsCode = "va z=x+y".....
eval(jsCode, "label1");
因此,当抛出异常时,它会像这样说:(Label1) in at line number 7。
这将使调试和找到问题的根源更容易。
创建JS eval函数的简单包装器:
function evalWithLabel(js, label) {
try {
return eval(js);
} catch(err) {
throw label + ': ' + err;
}
}
相关文章:
- 如何在JavaScript中将字符串转换为函数引用
- 动态分配GA增强型电子商务跟踪器
- jQuery中是否内置了任何字符串格式化函数
- 跟踪在页面加载时应用内联样式的JavaScript
- Javascript,有没有一种方法可以将数组写成没有逗号或空格的单个文本字符串
- ng打开空字符串
- 正则表达式在字符串中找到base64
- 如何将字符串值从php页面发送到java脚本页面
- 子字符串/正则表达式以获取字符串中保存的 SRC 值
- 字符串在将其传递给另一个活动Android JavaScript时读取Null
- 对id以某个字符串开头的元素进行计数
- Javascript逻辑运算符和字符串/数字
- 反向字符串比较
- 如何有效地将游戏数据存储在URL查询字符串中
- 可变大小的JavaScript字符串如何成为基元类型
- 如何在正则表达式中从右侧跟踪字符串
- 从nodejs中抛出的字符串中获取堆栈跟踪
- Rhino Javascript -如何为异常堆栈跟踪标记字符串源
- 只跟踪页面,而不是查询字符串
- 跟踪标签&GA中的查询字符串