2013-06-25 83 views
1

我有兩個問題。我是python的新手,對於Python中的所有BIF都不夠流利。python如何處理http請求和響應

我正在開發一個網站數據庫是在亞馬遜簡單分貝。 我正在處理所有與數據庫相關的查詢和使用python腳本的代碼。 我的第一個問題是給出一個HTML頁面,用戶提供他的登錄憑證,我使用我的處理函數javascript函數在一個python腳本中調用發送請求並獲得我的python腳本的響應。 我可以發送一個帖子請求,並從sdb獲取值進行驗證。我需要知道的是如何發送我的腳本回復到我的html頁面,這可能會對給出的信息做出反應。

我的第二個問題是如何使用python維護HTTP會話?

我的Python代碼如下雖然它不應該讓大部分給出因爲沒有響應代碼被添加:

 form=cgi.FieldStorage() 
     organisationID= form['orgID'].value 
     username= form['username'].value 
     password= form['password'].value 
     sdb=sdbhelper.connect() 
     connection= sdb.get_domain('AdminTable') 
     itemnames='' 
     flag=False 
     for item in connection: 
      if (item.name==username+'$'+organisationID): 
        retrieved_item=connection.get_item(item.name) 
        if(retrieved_item['Password']==password): 
        flag=True 
     #Now Id like to respond with flag so that login validation can be done 

回答

1

如果我正確地得到你想要做什麼你的問題是創建一個小的API ,你在哪裏發送一些信息到網頁並獲得其他信息。 你可以做的是,一旦用戶被認證,你應該返回一個短期有效的訪問密鑰。 發送數據的方式之一可能是通知JSON對象。 例如,如果用戶進行身份驗證,然後返回

{

'KEY'   : 'dklsfeir5rufui435uejhfjh5ewh5rf' 

}

從您可以。比如訪問沿着URL這短暫的鍵關聯的下一個請求發送下一個請求abc.py?key=dklsfeir5rufui435uejhfjh5ewh5rf(通過get或by post)。如果密鑰有效,則處理該請求,否則發送一個json響應,指出發生了錯誤。

使用JSON的主要優點是它可以很容易地解碼/編碼的通信 (JSON | http://docs.python.org/2/library/json.html),其次爲你生成你就不需要任何會話訪問關鍵 。