POST方法向网站发送数据

server.py

import flask
app = flask.Flask(__name__) @app.route('/', methods=['GET','POST'])
def index():
try:
province = flask.request.form.get('province')
city = flask.request.form.get('city')
note = flask.request.form.get('note')
print(province, city, note)
return province + "\n" + city + "\b" + note
except Exception as e:
print(e) debug = True
if __name__ == '__main__':
app.run()

client.py

import urllib.request
import urllib.parse url = "http://127.0.0.1:5000" province = "山东"
city = "青岛"
note = "青岛地处山东半岛东南部沿海,胶东半岛东部,濒临黄海,隔海与朝鲜半岛相望,地处中日韩自贸区的前沿地带; 东北与烟台毗邻,西与潍坊相连,西南与日照接壤; 青岛因地理位置优越继而1891年清政府驻兵建置,1897年德国租借建设港口和铁路,青岛因“一港一路”而兴,拥有国际性海港和区域性枢纽航空港,是实施海上丝绸之路、履行国家一带一路战略重要的枢纽型城市。" # urllib.parse模块中的一个方法,用于将字符串进行URL编码,URL编码是将URL中的非ASCII字符和一些特殊字符转换成特定的格式
province = urllib.parse.quote(province)
city = urllib.parse.quote(city)
province = urllib.parse.quote(province) pc = "province=" + province + "&city=" + city + "¬e=" + note response = urllib.request.urlopen(url, data = pc.encode())
data = response.read()
html = data.decode("utf-8")
print(html)

post发送中文数据

server.py

import flask
app = flask.Flask(__name__) @app.route('/', methods=['GET','POST'])
def index():
try:
province = flask.request.args.get('province')
city = flask.request.args.get('city')
note = flask.request.form.get('note')
print(province)
print(city)
print(note)
return province + "\n" + city + "\b" + note
except Exception as e:
print(e) debug = True
if __name__ == '__main__':
app.run()

client.py

import urllib.request
import urllib.parse url = "http://127.0.0.1:5000" province = "山东"
city = "青岛"
note = "青岛地处山东半岛东南部沿海,胶东半岛东部,濒临黄海,隔海与朝鲜半岛相望,地处中日韩自贸区的前沿地带; 东北与烟台毗邻,西与潍坊相连,西南与日照接壤; 青岛因地理位置优越继而1891年清政府驻兵建置,1897年德国租借建设港口和铁路,青岛因“一港一路”而兴,拥有国际性海港和区域性枢纽航空港,是实施海上丝绸之路、履行国家一带一路战略重要的枢纽型城市。" # urllib.parse模块中的一个方法,用于将字符串进行URL编码,URL编码是将URL中的非ASCII字符和一些特殊字符转换成特定的格式
province = urllib.parse.quote(province)
city = urllib.parse.quote(city)
note = urllib.parse.quote(note) pc = "province=" + province + "&city=" + city n = "note=" + note response = urllib.request.urlopen(url+"?"+pc, data = n.encode())
data = response.read()
html = data.decode()
print(html)

Form表单中的POST

server.py

import flask
app = flask.Flask(__name__) @app.route('/', methods=['GET','POST'])
def index():
msg = ""
user = flask.request.values.get('user', "")
pwd = flask.request.values.get('pwd', "") if user=="123" and pwd=="123":
msg = "登陆成功"
elif user or pwd:
msg = "登录失败"
return flask.render_template("login.html", msg=msg) debug = True
if __name__ == '__main__':
app.run()

login.html

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body> <form name = "form1" action="" method="post">
用户<input type="text" name="user"><br>
密码<input type="password" name="pwd"><br>
<input type="submit" value="登录"> </form>
<div>
{{msg}}
</div>
</body>
</html>

使用POST方法向网站发送数据的更多相关文章

  1. Android系列之网络(三)----使用HttpClient发送HTTP请求(分别通过GET和POST方法发送数据)

    ​[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/ ...

  2. (三)----使用HttpClient发送HTTP请求(分别通过GET和POST方法发送数据)

    文章来源:http://www.cnblogs.com/smyhvae/p/4006009.html 一.GET和POST的对比: 在漫长的时间当中,其他的方法逐渐的退出了历史舞台,最常用的只剩下GE ...

  3. 网络相关系列之三:通过GET和POST方法发送数据

    写在最前面:年少的安逸舒适在随着年龄的到来和现实生活的压迫总有一天会全数归还(事实上就是<无间道>中那句:"出来混,迟早要还的!") so fighting. 一.GE ...

  4. C++使用POST方法向网页提交数据-----C++发送HTTP数据获取Google天气预报

    例1:C++使用POST方法向网页提交数据    转自:http://www.it165.net/pro/html/201208/3534.html 在C++中可以使用POST方法向网页中提交数据,这 ...

  5. HTTP客户端之使用request方法向其他网站请求数据

    在node中,可以很轻松的向任何网站发送请求并读取该网站的响应数据. var req=http.request(options,callback); options是一个字符串或者是对象.如果是字符串 ...

  6. C#中在WebClient中使用post发送数据实现方法

    很多时候,我们需要使用C#中的WebClient 来收发数据,WebClient 类提供向 URI 标识的任何本地.Intranet 或 Internet 资源发送数据以及从这些资源接收数据的公共方法 ...

  7. HTTP 请求方式: GET和POST的比较当发送数据时,GET 方法向 URL 添加数据;URL 的长度是受限制的(URL 的最大长度是 2048 个字符)。

    什么是HTTP? 超文本传输协议(HyperText Transfer Protocol -- HTTP)是一个设计来使客户端和服务器顺利进行通讯的协议. HTTP在客户端和服务器之间以request ...

  8. STM32 使用 printf 发送数据配置方法 -- 串口 UART, JTAG SWO, JLINK RTT

    STM32串口通信中使用printf发送数据配置方法(开发环境 Keil RVMDK) http://home.eeworld.com.cn/my/space-uid-338727-blogid-47 ...

  9. 使用post()方法以POST方式从服务器发送数据

    使用post()方法以POST方式从服务器发送数据 与get()方法相比,post()方法多用于以POST方式向服务器发送数据,服务器接收到数据之后,进行处理,并将处理结果返回页面,调用格式如下: $ ...

  10. idHTTP 向网站发送json格式数据

    idHTTP 向网站发送json格式数据 var rbody:tstringstream; begin rbody:=tstringstream.Create('{"name":& ...

随机推荐

  1. dotnet C# 多次对一个对象调用构造函数会发生什么

    今天来玩一点变态的,使用反射获取到某个类型的构造函数,接着多次对此类型的某个对象调用构造函数方法.请问此时会发生什么 假定有一个类型 Foo 的定义如下 class Foo : IDisposable ...

  2. 火山引擎ByteHouse:OLAP如何支持超高QPS点查?

    更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群 在当今高速发展的互联网时代,信息传播迅速,用户数量激增.在面对如此庞大的用户群体和高频的访问需求时,系统高并发访问 ...

  3. js实现打字机效果(完整实例)

    在上篇css高斯模糊的效果基础上用js实现一个打字机效果: 上图: 代码: <!DOCTYPE HTML> <html lang="en-US"> < ...

  4. Codeforces Round 940 (Div. 2) and CodeCraft-23 (A-E)

    A. Stickogon 题意:给定 \(n\) 根木棒长度,问最多构成几个多边形. 贪心,四边形不会优于三角形. submission B. A BIT of a Construction 题意:构 ...

  5. 08. C语言函数

    [函数基础] 函数用于将程序代码分类管理,实现不同功能的代码放在不同函数内,一个函数等于一种功能,其它函数可以调用本函数执行. C语言规定所有的指令数据必须定义在函数内部,比如之前介绍的程序执行流程控 ...

  6. linux上PGI编译器安装

    1.PGI编译器介绍 随着英伟达的收购,PGI编译器已经已经并入NVIDIA HPC SDK.后面直接安装NVIDIA HPC SDK即可. NVIDIA HPC SDK提供了使用标准的C/C++和F ...

  7. 原生微信小程序

    new Date 跨平台兼容性问题 在 Andriod 使用 new Date("2018-05-30 00:00:00")木有问题,但是在ios 下面识别不出来.因为 IOS 下 ...

  8. Calcite sql2rel 过程

    sql2rel的过程是将SqlNode 转化成RelNode的过程 在 SqlToRelConverterTest中添加样例测试 @Test void testScan() { String sql ...

  9. kubernetes 之二进制方式部署

    我的资料链接:https://pan.baidu.com/s/18g0sar1N-FMhzY-FCMqOog 两种集群架构图 多master需要在集群上面加个lb,所有的node都需要连接lb,lb帮 ...

  10. vmware迁移虚拟机

    迁移 1.打开"VMware",点击"虚拟机详细信息"可以看到虚拟机的储存路径. 2. 按照储存路径找到虚拟机文件位置,将整个虚拟机文件复制,粘贴到需要转移的路 ...