0

我正在尝试在使用JavaScript 策略alert()时在 java 脚本中实现。apigee's

以下是我的 JavaScript 政策:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Javascript async="false" continueOnError="false" enabled="true" 
          timeLimit="200" name="javascript-1">
    <DisplayName>JavaScript-1</DisplayName>
    <ResourceURL>jsc://javascript-1</ResourceURL>
</Javascript>

javascript-1 文件:

alert('1212');

但是我收到以下错误。

错误代码:

{"fault":"{\"detail\":{\"errorcode\":\"steps.javascript.ScriptExecutionFailed\"},\"faultstring\":\"javascript-1 执行失败并出现错误:Javascript 运行时错误:\\"ReferenceError: \\"alert\\" 未定义。(javascript_1#59)。在第 59 行 \\"\"}"}

4

4 回答 4

2

如果您尝试调试脚本,还有另一种方法。您可以使用这种方式将任何变量或文字分配给流变量,context.setVariable("debugVar", "Hello there"); 该值将显示在 Apigee 的“调试”视图中并帮助您进行调试。你可以稍后清理它。

于 2014-02-10T08:27:29.877 回答
2

您可以调用的另一个不为人知的函数是print,如下所示:

print("你好,来自我的脚本");

当您跟踪 API 调用时,将记录打印调用的所有输出。在跟踪工具中,您将在“标准输出”下看到此输出。

这是一个很棒的调试工具。

于 2014-02-10T16:16:11.310 回答
0

JavaScript 警报功能在 Apigee 的 Edge JavaScript 政策中不可用。alert() 是一个创建消息框的用户界面函数。API 门面中没有用户界面,使用跟踪工具时不支持警报。

于 2014-02-10T07:49:08.420 回答
0

您可以解决的另一种方法是在您的 javascript 代码中使用 console.log(message),它将“消息”输出到 Chrome 或 Firefox 的开发人员工具中的控制台输出。

于 2014-02-13T00:37:17.443 回答