python如何处理http请求和响应

时间:2013-06-25 19:28:22

标签: python web-applications python-3.x httpresponse

我有两个问题。我是python的新手,对python中的所有BIF都不够流畅。

我正在开发一个关于亚马逊简单数据库的网站数据库。 我正在使用python脚本处理所有与数据库相关的查询和代码。 我的第一个问题是一个HTML页面,用户提供了他的登录凭据,我在python脚本中调用我的处理程序javascript函数发送一个post请求并从我的python脚本获得响应。 我可以发送一个post请求,并从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 个答案:

答案 0 :(得分:1)

如果我正确地提出您的问题,您要做的是创建一个小型API,您将某些信息发送到网页并获取其他信息。 您可以做的是,一旦用户通过身份验证,您应该返回一个在短时间内有效的访问密钥。 发送数据的方法之一可能是通知JSON对象。 例如,如果用户已通过身份验证,则返回

{

 'KEY'         : 'dklsfeir5rufui435uejhfjh5ewh5rf'

}

从下一个请求中,您可以将此短暂密钥与网址相关联以进行访问。例如,将下一个请求发送到abc.py?key=dklsfeir5rufui435uejhfjh5ewh5rf(通过获取或发布)。如果密钥有效,则处理请求,否则发送json响应,说明发生了错误。

使用JSON的主要优点是可以轻松解码/编码以进行通信 (JSON | http://docs.python.org/2/library/json.html) 其次,当您生成访问密钥时,您不需要任何会话。