Wildfly 在KeyClope中测试/调试javascript映射器/策略的最佳方法

Wildfly 在KeyClope中测试/调试javascript映射器/策略的最佳方法,wildfly,keycloak,jboss-tools,keycloak-services,Wildfly,Keycloak,Jboss Tools,Keycloak Services,我是KeyClope的新手,一直在尝试设置基于javascript的authz策略和客户端映射程序。我想知道调试这些映射程序或策略的最佳方法是什么 现在,如果脚本中有任何错误,我只能在服务器日志中找到它,但是有没有一种方法可以使用alert或console.log之类的东西;在这两种情况下,服务器日志都提到: Caused by: <eval>:18 ReferenceError: "alert" is not defined Caused by: <eval>:18 R

我是KeyClope的新手,一直在尝试设置基于javascript的authz策略和客户端映射程序。我想知道调试这些映射程序或策略的最佳方法是什么

现在,如果脚本中有任何错误,我只能在服务器日志中找到它,但是有没有一种方法可以使用alert或console.log之类的东西;在这两种情况下,服务器日志都提到:

Caused by: <eval>:18 ReferenceError: "alert" is not defined
Caused by: <eval>:18 ReferenceError: "console" is not defined 
由::18 ReferenceError引起:未定义“警报”
由::18 ReferenceError引起:“控制台”未定义
如果脚本运行时,我至少可以记录属性或属性的值,以检查正在进行的操作,这将非常有用

print("something");

您将在服务器日志中看到它

您可以使用调试选项启动KeyClope,例如使用以下脚本

#!/bin/bash
echo "Starting KeyCloak"
sh ./keycloak-4.7.0.Final/bin/standalone.sh --debug 6666

我用它来调试java映射器和java提供者。也许它对javascript也有帮助。

找到了答案,KeyClope使用Nashorn engine for js,我们可以使用print()打印/记录KeyClope控制台中的值。我希望有一种方法可以像常规java脚本一样进行调试,我需要检查对象。当我在身份验证请求中传递头时,它们是空的。