1

我正在疯狂地尝试将此 JavaScript 行插入 WSO2 ESB脚本中介:

response.forecast = response.forecast.map( s => Object.values(s)[0] );

将此行插入我的脚本后,尝试保存后,我在 Developer Studio 中收到一条错误消息。它发现了与此行相关的语法错误(在我的浏览器中执行相同的 JavaScript 它工作正常,我没有错误。我尝试保存它并部署为 Carbon 应用程序,但现在我在 Carbon 控制台中收到错误:

Caused by: javax.script.ScriptException: org.mozilla.javascript.EvaluatorException: syntax error (<Unknown Source>#217)
        at com.sun.phobos.script.javascript.RhinoScriptEngine.compile(RhinoScriptEngine.java:341)
        at com.sun.phobos.script.javascript.RhinoScriptEngine.compile(RhinoScriptEngine.java:323)
        at org.apache.synapse.mediators.bsf.ScriptMediator.initInlineScript(ScriptMediator.java:399)
        ... 32 more

可能是什么问题呢?为什么这一行只会在 WSO2 ESB 脚本中介体中产生问题?

也许我要逃避一些角色或类似的东西?我该如何尝试解决此问题?

4

1 回答 1

3

您的 JS 将在脚本中介内内联:

<script language="js">                          
    response.forecast = response.forecast.map( s => Object.values(s)[0] );
</script>

猜测“>”是问题所在,您可以使用&gt;或使用 CDATA 部分对其进行转义:

<script language="js"><![CDATA[                         
    response.forecast = response.forecast.map( s => Object.values(s)[0] );
]]></script>
于 2017-11-23T20:12:48.313 回答