`

python之bottle框架的get,post请求实例

阅读更多
=======================get请求

# coding=utf-8
'''
Created on 2017年5月9日

@author: chenkai
'''
import bottle

def check_login(username, password):
    if username == 'kaige' and password == '123456':
        return True
    else:
        return False

@bottle.route('/login')
def login():
    if bottle.request.GET.get('do_submit','').strip(): #点击登录按钮
        # 第一种方式(latin1编码)
##        username = bottle.request.GET.get('username','').strip()  # 用户名
##        password = bottle.request.GET.get('password','').strip()  # 密码

        #第二种方式(获取username\password)(latin1编码)
        getValue = bottle.request.query_string
##        username = bottle.request.query['username'] # An utf8 string provisionally decoded as ISO-8859-1 by the server
##        password = bottle.request.query['password'] # 注:ISO-8859-1(即aka latin1编码)
        #第三种方式(获取UTF-8编码)
        username = bottle.request.query.username      # The same string correctly re-encoded as utf8 by bottle
        password = bottle.request.query.password      # The same string correctly re-encoded as utf8 by bottle
       
        if check_login(username, password):
            return "<p>登录成功</p>"
        else:
            return "<p>登陆失败,用户名或者密码错误</p>"
    else:
        return ''' <form action="/login" method="get">
                     Username: <input name="username" type="text" />
                     Password: <input name="password" type="password" />
                     <input value="Login" name="do_submit" type="submit">
                   </form>
                '''

bottle.run(host='localhost', port=8083)

运行这个py程序后,浏览器输入:http://localhost:8083/login , 输入用户名和密码,点击登录







===================================post请求

# coding=utf-8
'''
Created on 2017年5月9日

@author: chenkai
'''
import bottle

def check_login(username, password):
    if username == 'kaige' and password == '123456':
        return True
    else:
        return False

@bottle.route('/login')
def login():
    return ''' <form action="/login" method="post">
                 Username: <input name="username" type="text" />
                 Password: <input name="password" type="password" />
                 <input value="Login" type="submit">
               </form>
            '''

@bottle.route('/login', method='POST')
def do_login():
    # 第一种方式
#   username = request.forms.get('username')
#   password = request.forms.get('password')

    #第二种方式
    postValue = bottle.request.POST.decode('utf-8')
    username = bottle.request.POST.get('username')
    password = bottle.request.POST.get('password')

   
    if check_login(username, password):
        return "<p> 登录成功</p>"
    else:
        return "<p> 登录失败 </p>"

bottle.run(host='localhost', port=8083)


运行这个py程序后,浏览器输入:http://localhost:8083/login , 输入用户名和密码,点击登录,这个明显是post请求, 而且浏览器不会显示参数


分享到:
评论

相关推荐

    python做get和post请求

    在给定的标题和描述中,“python做get和post请求”指的就是如何使用Python实现HTTP的GET和POST方法。这两种方法是HTTP协议中最基本的操作,GET用于获取资源,而POST用于提交数据。 在Python中,有几个模块可以用来...

    Python实现简单的HTTP服务器(GET/POST)

    本文将深入探讨如何使用Python实现一个简单的HTTP服务器,支持GET和POST请求。通过理解这个过程,你可以更好地理解网络通信的基本原理,以及Python在网络编程中的应用。 首先,让我们了解HTTP(超文本传输协议)的...

    python-playwright修改GET/POST请求参数,抓包修改数据

    python--playwright修改GET/POST请求参数,抓包修改数据,内含: 1、index.py主代码,演示完整的抓包修改数据demo 2、flaskServer.py服务端,用于返回传入的参数 运行顺序: 先运行:python flaskServer.py 然后再...

    关于python的bottle框架跨域请求报错问题的处理方法

    在Python的Web开发中,Bottle框架是一个轻量级的选择,适合构建简单的API服务和小型应用。然而,在开发过程中,遇到跨域资源共享(CORS)问题是很常见的,尤其是在前端使用Ajax进行跨域请求时。本文将深入探讨如何...

    pythonPost请求处理和get请求.zip

    在Python中,我们可以使用内置的`http.client`模块或者第三方库如`requests`来实现HTTP请求,包括GET和POST方法。本文将详细讨论这两种方法以及如何在Python3中实现它们。 1. GET请求 GET是最常见的HTTP请求方法,...

    Python的Bottle框架中实现最基本的get和post的方法的教程

    ### Python的Bottle框架中实现最基本的get和post的方法的教程 #### 一、Bottle框架简介 Bottle是一个快速、简单且轻量级的WSGI兼容的Web应用框架,非常适合小型应用或作为更大的应用程序的一部分使用。它使用单一...

    使用python 2.7来编写post请求接口 。

    1.安装对应的库 2.将test_http_copy.py代码复制到自己的服务器或电脑上 3.python test_http_copy.py启动或(ohup python -u test_http_copy.py &gt; test.log 2&gt;&1 & 后台启动) 4.使用postman调用自测。

    Python大数据之网络爬虫的post请求、get请求区别实例分析

    了解了GET和POST请求的区别后,我们可以根据实际需求选择合适的请求方式来编写Python网络爬虫。在爬取过程中,还需要注意处理各种可能的反爬策略,如验证码、IP限制等。同时,要遵守网站的robots.txt规则,尊重网站...

    python3接口框架带实例

    首先,Python3中的接口测试框架通常基于requests库,这是一个轻量级且易于使用的HTTP库,可以模拟发送GET、POST等各种HTTP请求。在本实例中,我们可能会看到如何导入requests库并构造请求,包括设置URL、参数、头...

    Python用Bottle轻量级框架进行Web开发

    当前Python Web开发中的框架算Django最为流行了,但是本文介绍的是一个较为轻量级的Web框架:Bottle框架。理论性的东西就不讲了,直接上实例代码。 1.问题描述  最近做一个系统的后台开发,用的就是Python+Bottle...

    Python批量发送post请求的实现代码

    2. 批量发送POST请求:文档介绍了如何在Python中实现批量发送POST请求的功能。在真实场景中,这种需求可能出现在需要自动化测试、数据采集、接口调用等多个场景。文档提供了Java和Python两种语言的实现代码,对初学...

    Python SocketServer通信框架项目实例

    Python SocketServer通信框架是Python标准库中的一个模块,它提供了基于TCP/IP协议的服务器端编程基础框架,可以方便地创建自定义的服务。本项目实例基于SocketServer,实现了长连接和多线程通信,同时处理了通信...

    POST实例 模仿post请求

    本文将深入探讨POST实例,如何模仿POST请求,以及如何获取并处理请求返回的值。 首先,POST请求主要用于向服务器发送数据,通常用于创建新的资源。与GET请求不同,GET请求会在URL中附带参数,而POST请求的数据则...

    window的open方法把get请求转成post请求处理方式逻辑

    根据实际的开发项目整理的一个window的open方法把get请求转成post请求处理方式逻辑,由于window.open方法的get实现时,请求传入的参数长度不能超过2000这样一个字符长度,故需转换成post请求处理方式达到既能用到...

    python爬虫请求—post

    在Python中,`requests`库是进行HTTP请求的首选工具,它提供了简单易用的接口来发送GET、POST等不同类型的HTTP请求。本篇文章将详细探讨如何使用Python的`requests`库进行POST请求,模拟浏览器登录。 首先,我们...

    python教程之bottle web开发

    ### Python教程之Bottle Web开发 #### Bottle框架简介 Bottle是一个用Python编写的轻量级Web应用框架,因其简洁高效的特点,在小型项目或快速原型开发中被广泛使用。本教程将详细介绍如何使用Bottle框架进行Web...

    简单的连接MySQL与Python的Bottle框架的方法

    在Python web开发中,Bottle框架是一个轻量级的、易于使用的微型Web框架,它允许开发者用少量的代码实现复杂的Web应用。而将Bottle与MySQL数据库连接起来,可以实现数据的存储和检索,这对于构建动态网站至关重要。...

    Python的Bottle框架的一些使用技巧介绍

    Bottle通过`route`装饰器来定义路由规则,允许我们将HTTP请求方法(如GET、POST等)与特定的处理函数关联。例如: ```python from bottle import route, run @route('/hello/:name') def hello(name): return '...

    python爬虫实现POST request payload形式的请求

    在Python爬虫开发中,有时候我们需要模拟POST请求与服务器交互,获取特定的数据。在处理某些网站时,我们可能遇到POST请求需要使用`request payload`格式的情况。与常见的`form data`不同,`request payload`是一种...

    Python 访问http, https请求

    在`prnqa-1.1`这个压缩包中,可能包含了一个名为`prnqa`的Python库或项目,它可能是一个用于处理网络请求的工具或者框架。如果你需要进一步了解这个库的功能和用法,可以解压文件并查看其源代码,或者根据博文链接...

Global site tag (gtag.js) - Google Analytics