2010-09-30 61 views
0

我正面臨着我的表單問題,我在Python3.1中編寫了一個應用程序,當我通過AJAX進行GET或POST時,效果很好,但是當我嘗試使用表單的方式ENVIRON [「wsgi.input」]給我這個:表單和POST的問題

-----------------------------4974611941277794205934495116--\r 

在第一時間,我認爲這是因爲該文件是什麼,我是嘗試上載,但後,我消除了文件中的元素,並給我同樣的事情是什麼意思,我讓你的代碼的形式:

<iframe id="hidden-frm" name="hidden-frm" style="display: none;"> 
</iframe> 
<form ENCTYPE="multipart/form-data" action="Gate.py?bt=upload" method="POST" name="input" target="hidden-frm">  
    <input id="testtxt" type="text"/> 
    <input type="submit" value="Presiona aqui!"/> 
</form> 

在此先感謝。

+0

你能告訴我們更多關於你想工作的環境嗎? IE瀏覽器。它是一個使用wsgiref服務的WSGI應用程序,或者可能是通過Apache的CGI,或者是通過nginx的FastCGI? – 2010-10-02 13:37:34

+0

這是一個使用wsgiref服務的WSGI應用程序,主要問題是當我試圖保存一個生硬的文件時,解決了問題的問題,但是謝謝!!!!!! – hidura 2010-10-04 19:39:58

回答

0

該編碼是enctype="multipart/form-data的結果,當我懷疑你實際上期待application/x-www-form-urlencoded(即key=value&key2=value2)的默認編碼。

如果您不需要文件輸入(需要多部分編碼),那麼只需從表單標籤中移除enctype,否則您將需要解析多部分輸入。 stdlib cgi.FieldStorage是Python 2.x的一個解決方案,但我不知道Python 3.x的特定類的狀態(它曾經被破壞,IIRC)。

+0

這不起作用,但它的工作原理類型,現在我的問題是在cgi中的提取,theres沒有其他方式來提取? – hidura 2010-10-02 05:49:17