首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在javascript中调用空手道功能(使用Karate.call)时获取垃圾值(com.intuit.karate.ScriptObjectMap@XXXX)

在javascript中调用空手道功能(使用Karate.call)时获取垃圾值(com.intuit.karate.ScriptObjectMap@XXXX)
EN

Stack Overflow用户
提问于 2018-07-25 11:46:42
回答 1查看 479关注 0票数 2

我正在尝试调用javascript中的空手道功能,并捕获其响应,如下所示,但在执行此操作时,来自karate.call的响应显示为垃圾值(com.intuit.karate.ScriptObjectMap@XXXX)。请帮助从karate.call获得实际的值,或者给我建议任何最好的想法?

代码语言:javascript
复制
function RequestMandator(featurepath,data) {
var Mandator = [];
data.forEach(function(data){    
var TransferId =  data.TransferID;
var FocusKey = data.TransferID + ':';
var TimeStamp = data.LastUpdate;
var result = karate.call(featurepath, { input: [TransferId, FocusKey,TimeStamp ] });
karate.log('Added Mandator :', result);
Mandator.push(result);        
})
return Mandator;
}

输出:

代码语言:javascript
复制
11:32:53.307 [main] WARN  com.intuit.karate - xml parsing failed, response data type set to string: org.xml.sax.SAXParseException; lineNumber: 5; columnNumber: 15; Open quote is expected for attribute "border" associated with an  element type  "table".
11:32:53.310 [main] INFO  com.intuit.karate - Added Mandator : com.intuit.karate.ScriptObjectMap@102d92c4 

Error:
    com.intuit.karate.exception.KarateFileNotFoundException: C:\XXXXXXXX\com.intuit.karate.ScriptObjectMap@7808fb9,com.intuit.karate.ScriptObjectMap@25d958c6,com.intuit.karate.ScriptObjectMap@5eeedb60,com.intuit.karate.ScriptObjectMap@6ad6fa53,com.intuit.karate.ScriptObjectMap@6f099cef,com.intuit.karate.ScriptObjectMap@2d66530f,com.intuit.karate.ScriptObjectMap@25b865b5 (The filename, directory name, or volume label syntax is incorrect)
    at com.intuit.karate.FileUtils.getFileStream(FileUtils.java:146)
    at com.intuit.karate.FileUtils.readFile(FileUtils.java:110)
    at com.intuit.karate.ScriptBridge.read(ScriptBridge.java:67)
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-07-25 16:24:26

请参考有关类型转换的文档:https://github.com/intuit/karate#type-conversion

根据您提供的不完整信息,不可能得出结论。让我试一试,我认为你在调用这个函数之前在字符串连接方面做了一些错误的事情。featurepath的值是完全错误的。

在下面的示例中,看看JS函数中的字符串连接是如何导致您所说的“垃圾值”的:

代码语言:javascript
复制
* def fun = function(){ var temp = { hello: 'world' }; return temp + '' }
* def bar = fun()
* print "bar:", bar

输出结果:

代码语言:javascript
复制
13:52:50.912 [main] INFO  com.intuit.karate - [print] bar: [object Object]

如果你仍然被卡住了,我唯一的建议就是按照这里的说明去做:https://github.com/intuit/karate/wiki/How-to-Submit-an-Issue

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51510497

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档