前提・実現したいこと
チャットのようなインタラクティブなWebアプリケーションを構築しようとしています。
そこに、ユーザーがブラウザ上に入力したコードをそのまま実行できる機能の追加を検討しています。
不特定多数に公開することを想定しており、ユーザーtoユーザーで任意コードを送れてしまうので、単純にJavaScriptでeval()するみたいな実装にしたくありません。
また、パフォーマンスの都合上、サーバーにPOSTして実行するのは避けたいなと考えています。
実現するライブラリや方法をご存知の方はいらっしゃらないでしょうか?
例えば、以下のようなものがあればいいなと思っていました。
- ブラウザ上で実行できるスクリプト実行エンジン。
- JavaScriptで window.location などの任意のAPI使用を制限する方法。
利用イメージ
ユーザー入力のコードは、例えば以下のようなものを想定しています。
js
1function onPostRound(ctx, api) [ 2 if (ctx.round === 2) { 3 api.triggerEvent('hitman', {}); 4 } 5} 6 7function hitman(arg, api) { 8 // ... 9}
回答1件
あなたの回答
tips
プレビュー