python web自制框架之接受url传递过来的参数实例

yipeiwu_com6年前Python基础

我们知道,在django里有个request,可以接收表单等前端传过来的数据,现在我们也做一个类似的功能。

首先我们定义一个类class,然后初始化数据与定义保存参数的方法,如下:

class Request(object):
 def __init__(self):
  self.method = 'GET'
  self.path = ''
  self.query = {}
  self.body = ''
 
 def form(self):
  body = urllib.parse.unquote(self.body)
  args = body.split('&')
  f = {}
  for arg in args:
   k, v = arg.split('=')
   f[k] = v
  return f

然后我们可以request = Request(),然后把request设置成全局变量,请求一次,就把request里面的数据刷新一次。

例:

r = connection.recv(1000)
r = connection.resv(1000)

r接收请求的数据

然后,request.method = r.split()[0]

request.body = r.split('\r\n\r\n',1)[1]

以此类推。

以上这篇python web自制框架之接受url传递过来的参数实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python将xml xsl文件生成html文件存储示例讲解

前提:安装libxml2 libxstl 官方网站:http://xmlsoft.org/XSLT/index.html 安装包下载:http://xmlsoft.org/sources...

Python 比较文本相似性的方法(difflib,Levenshtein)

最近工作需要用到序列匹配,检测相似性,不过有点复杂的是输入长度是不固定的,举例为: input_and_output = [1, 2, '你好', 世界', 12.34, 45.6,...

利用Python实现颜色色值转换的小工具

利用Python实现颜色色值转换的小工具

先看看Zeplin 的颜色色值显示示例 原有处理方式 因为我会 Python (仅限于终端输入 python 然后当做计算器算,或者用 hex() 函数把十进制转换成十六进制),所...

解决python super()调用多重继承函数的问题

当类间继承关系很简单时,super()的使用很简单。 class A(object): def __init__(self): print('a') class B(A...

python实现文件路径和url相互转换的方法

本文实例讲述了python实现文件路径和url相互转换的方法。分享给大家供大家参考。具体实现方法如下: import urllib pathname = 'path/to/file...