允许用户内联脚本,哪些内联脚本引擎可用于.net或java?

时间:2009-12-28 16:15:33

标签: c# java templates scripting

是否有任何开源脚本引擎允许您通过基于Web的界面为用户提供在页面上执行轻量脚本的功能?

(一些对象/集合将被预先填充,并且具有安全性,因此用户无法入侵Web应用程序的内部工作等。)

示例:

http://wiki.shopify.com/UsingLiquid

另外我认为vBulletin有一些自定义脚本引擎和标签,您可以在其中执行以下操作:

<if: user.isloggedin>
</if>

3 个答案:

答案 0 :(得分:1)

Java有scripting framework(在Java 6中)允许你(通过网络)提交多种不同语言的脚本(在我的脑海中,插件可用于Ruby / Python / Javascript)。然后脚本引擎可以运行它。

可以使用标准JSP修改页面,也可以通过Apache VelocityFreemarker模板修改页面。

但是,我不确定你是如何实现一种有意义的安全形式的。也许是通过产生具有特定访问策略的新JVM来实现的。不过,对于某些场景来说,这可能会有点重量级。

答案 1 :(得分:0)

我们使用IronPython作为我们的脚本引擎取得了很大的成功。

我们创建了一个允许用户修改网页的图形用户界面。在后台,它生成一个Python代码并动态执行代码。

答案 2 :(得分:0)

Jint非常棒 - 适用于.NET应用程序的完全可嵌入的JavaScript引擎