0

チャットサイトがあります。これは、ブラウザ内で機能するかなり標準的なIRCスタイルのチャットです。ユーザーがチャット体験を向上させることができるアプリを作成してアップロードできるようにしたいと思います。アプリの一例は雑学クイズゲームです。ユーザーは、のようなチャットメッセージを発行することでこれを使用します/addtriviaquestion "foo"

私が立ち往生している技術的な問題は、悪意のあるものを防ぎながら、ユーザーのコードを実行する方法です。

私のサイトはdjango/pythonで構築されています。これらのアプリにはJavaScriptを使用したいと思います。たとえば、雑学クイズモジュールは次のように機能します。

register.command('/addtriviaquestion', function() {foo;});
register.command('/answerquestion', function() {foo;});

誰かが私がPythonにこの投獄された信頼できないjavascriptを実行させる方法を知っていますか?

4

1 に答える 1

1

おそらく、この投稿http://inka-labs.com/es/blog/2012/のように、javascript を実行して javascript によって生成された html を取得するphantomjs http://code.google.com/p/phantomjs/を使用できます。 05/24/get-executed-html/そして BeautifulSoup でコードをきれいにすると、問題は結果が動的 HTML にならなくなることです。もう 1 つのアイデアは、アップロードされたコードを別のドメインの iframe で実行することです。その場合、デフォルトのブラウザー iframe セキュリティは、iframe スクリプトがその親の要素を変更しようとする試みをブロックします。

于 2012-06-03T01:21:38.913 に答える