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实现将视频按帧读取到自定义目录

如题,首先读取视频路径,其次根据视频名称创建对应的文件夹,再逐帧将视频帧读入。 import cv2 import argparse import sys import os par...

Selenium元素的常用操作方法分析

本文实例讲述了Selenium元素的常用操作方法。分享给大家供大家参考,具体如下: Selenium是一个用于Web应用程序测试的工具。Selenium测试直接运行在浏览器中,就像真正的...

pytorch实现线性拟合方式

pytorch实现线性拟合方式

一维线性拟合 数据为y=4x+5加上噪音 结果: import numpy as np from mpl_toolkits.mplot3d import Axes3D from m...

Django中密码的加密、验密、解密操作

Django中密码的加密、验密、解密操作

简单介绍一下今天使用到的django内置的加解密包: from django.contrib.auth.hashers import make_password 如上图所示,dj...

python连接mysql调用存储过程示例

复制代码 代码如下:#!/usr/bin/env python# -*- coding: utf8 -*-import MySQLdbimport timeimport os, sys,...