これは既に尋ねられている場合は、まず私を撃ってはいけません - 私は周りを見回しましたが無駄です。Python変数の関数定義
私は、AJAXリクエストを処理する多くの機能を含むPythonファイル(rpc.py
)を持っています。
def test(self, vars):
return vars['id']
def test2(self, vars):
return vars['id']+1
そして、それは同じURLで呼ばれている:例えば
rpc.py?fnc=test2&id=4
私は'fnc'
クエリパラメータに一致する関数を呼び出すと'vars'
に全体クエリ文字列を渡したいです。
したがって、次の「擬似コード」のようなものは、私が後だものです:
vars = cgi.FieldStorage()
print "Content-Type: text/html\n\n"
print eval('vars["fnc"].value(vars)')
任意のアイデア?
となります。これはおそらく最も安全性の低いものです。サーバー上で実行される任意のコードを(簡単に追加して)渡すことができます。決してevalを使用しないでください。代わりに、それを行うための元気な方法を見つける –
私はあなたの応答を感謝しますが、私はちょうど観察よりも解決策の後でした。 – khany