我想从不受信任的来源解析并运行(clojure)代码 在clojure中,如果可能的话,在clojurescript中。
例:
用户在webbrowser中输入代码 - > cljs检测代码是否有效并提供反馈。
代码转到服务器 - >启动沙箱运行代码或进行代码分析
最好的方法是什么。
其他网站(运行不受信任的代码)如何做到这一点以及我应该使用哪些库。
我找到clojail,但最后一次提交是5岁 如果我正确的话,tools.reader会解析。
欢迎任何帮助:)
答案 0 :(得分:1)
听起来您需要read或read-string。这将读取流或字符串作为Clojure数据。
假设您了解并了解风险,则可以使用eval将其评估为代码。这基本上是repl正在做的事情。
请注意,您引用的clojail库为eval提供了更安全的替代,您可以在其中限制某些操作。它由https://www.4clojure.com/
使用