【问题标题】:alert() in javascript while using apigee's JavaScript policy使用 apigee 的 JavaScript 政策时在 javascript 中使用 alert()
【发布时间】:2014-02-10 07:33:56
【问题描述】:

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

以下是我的 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 行 \\"\"}"}

【问题讨论】:

    标签: apigee


    【解决方案1】:

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

    【讨论】:

      【解决方案2】:

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

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

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

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

      【讨论】:

        【解决方案3】:

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

        【讨论】:

          【解决方案4】:

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

          【讨论】:

            猜你喜欢
            • 2014-03-07
            • 1970-01-01
            • 1970-01-01
            • 2014-01-30
            • 2022-07-11
            • 2023-04-09
            • 2012-08-26
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多