2
首先,如果已經提出這個問題,請不要開槍 - 我已經環顧四周,但無濟於事。python可變函數定義
我有一個python文件(名爲rpc.py
)包含許多功能服務於AJAX請求。例如:
def test(self, vars):
return vars['id']
def test2(self, vars):
return vars['id']+1
,它被稱爲其網址如下:
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。相反,找到一個理智的方法來做到這一點 – 2011-02-05 00:00:27
我很欣賞你的迴應,但我的解決方案不僅僅是觀察。 – khany 2011-02-05 09:11:08