传递表格以调用 read() JavaScript 函数的语法
Syntax for passing tables to call read() JavaScript functions
将 table 作为参数传递给外部 JavaScript 函数并将 return 值存储在变量中的语法是什么?
* table user
| UserId | UserType | UserRoles |
| 123 | 'Regional' | { Role : Ninja } |
我在想 * def uid = call read('base64-encoder.js') { user }
函数定义为
function(uid) {
var Base64 = Java.type('java.util.Base64');
var encoded = Base64.getEncoder().encodeToString(uid.bytes);
}
但这给出了一个:
ParserException: Unexpected End of File position 7: null
如果要在数据库 table 中保存 JavaScript 对象,可以将 JavaScript 值转换为 JSON。 JSON 内容是一个字符串,您可以轻松将其保存到其中。示例:
// Convert to JSON
var jsonDatas = JSON.stringify(yourDatas);
// Convert to a JavaScript value
var javascriptDatas = JSON.parse(jsonDatas);
它有效,但我不建议在数据库中保存 JSON 内容。
在这种情况下,将空手道 table 传递给外部 JavaScript 函数的语法是
* def uid = call read('base64-encoder.js') user
只是为函数参数添加一个space。
JavaScript就是不知道如何处理它得到的列表项。因此,为了使此函数不会在类型检查时失败,table 行首先必须转换为这样的字符串:
* string me = user[0]
* def uid = call read('base64-encoder.js') me
这样 java 就不会在 table 上阻塞,您将从编码字符串中得到格式正确的 JSON 字符串:
function(uid) {
var Base64 = Java.type('java.util.Base64');
var encoded = Base64.getEncoder().encodeToString(uid.bytes);
return encoded;
}
将 table 作为参数传递给外部 JavaScript 函数并将 return 值存储在变量中的语法是什么?
* table user
| UserId | UserType | UserRoles |
| 123 | 'Regional' | { Role : Ninja } |
我在想 * def uid = call read('base64-encoder.js') { user }
函数定义为
function(uid) {
var Base64 = Java.type('java.util.Base64');
var encoded = Base64.getEncoder().encodeToString(uid.bytes);
}
但这给出了一个:
ParserException: Unexpected End of File position 7: null
如果要在数据库 table 中保存 JavaScript 对象,可以将 JavaScript 值转换为 JSON。 JSON 内容是一个字符串,您可以轻松将其保存到其中。示例:
// Convert to JSON
var jsonDatas = JSON.stringify(yourDatas);
// Convert to a JavaScript value
var javascriptDatas = JSON.parse(jsonDatas);
它有效,但我不建议在数据库中保存 JSON 内容。
在这种情况下,将空手道 table 传递给外部 JavaScript 函数的语法是
* def uid = call read('base64-encoder.js') user
只是为函数参数添加一个space。
JavaScript就是不知道如何处理它得到的列表项。因此,为了使此函数不会在类型检查时失败,table 行首先必须转换为这样的字符串:
* string me = user[0]
* def uid = call read('base64-encoder.js') me
这样 java 就不会在 table 上阻塞,您将从编码字符串中得到格式正确的 JSON 字符串:
function(uid) {
var Base64 = Java.type('java.util.Base64');
var encoded = Base64.getEncoder().encodeToString(uid.bytes);
return encoded;
}