Python 技术篇-requests发送post请求传文件给flask服务端报405、400问题解决方法

简介: Python 技术篇-requests发送post请求传文件给flask服务端报405、400问题解决方法

       

这是我 flask 服务端的一块代码,可以看到有个 methods=['GET', 'POST'],如果没有这个参数,发送请求就会报 405,因为默认能只接收到 get 请求,接收不到 post 请求。

下面链接是我用 requests 发送 post 传文件请求 flask 服务完整实现过程,有兴趣的可以看一下:

Python 技术篇-用 flask 库实现 mac 本地文件上传至 windows 服务器指定文件夹下实例演示

# 文件传输
@app.route('/sendfile', methods=['GET', 'POST'])
def down_file():
    if flask.request.method == 'POST':
        file = flask.request.files['file']   # 获取上传的文件
        if(file):   # 如果文件存在
            path_aim = flask.request.values.get('path');
            if(path_aim[-1] != "\\"):
                path_aim = path_aim + "\\"
            file.save(path_aim + file.filename)  # 保存文件
    return "文件接收成功!";

image.png

400 的原因很大情况下是 requests 参数传的有问题。

给大家看一下我测试正常的代码,之前 files 的格式有问题,导致的我发送请求报了 400

import requests
url = "http://10.11.xx.xx:5003/sendfile"
data = {'path':'D:\\工具'}
files = {'file':open(r'/Users/lizhi/Desktop/lizhi/XpathRobot_Crx.zip', 'rb')}
req = requests.request("POST", url = url, files = files, data = data)
print(req.text)

这是我正常请求成功并接收到相应的页面。

image.png

喜欢的点个赞❤吧!

           

目录
相关文章
|
4月前
|
存储 Web App开发 前端开发
Python + Requests库爬取动态Ajax分页数据
Python + Requests库爬取动态Ajax分页数据
|
4月前
|
Web App开发 安全 数据安全/隐私保护
利用Python+Requests实现抖音无水印视频下载
利用Python+Requests实现抖音无水印视频下载
|
4月前
|
JSON 网络安全 数据格式
Python网络请求库requests使用详述
总结来说,`requests`库非常适用于需要快速、简易、可靠进行HTTP请求的应用场景,它的简洁性让开发者避免繁琐的网络代码而专注于交互逻辑本身。通过上述方式,你可以利用 `requests`处理大部分常见的HTTP请求需求。
437 51
|
4月前
|
数据采集 API 调度
Python爬虫框架对比:Scrapy vs Requests在API调用中的应用
本文对比了 Python 中 Scrapy 与 Requests 两大爬虫框架在 API 调用中的差异,涵盖架构设计、调用模式、性能优化及适用场景,并提供实战建议,助力开发者根据项目需求选择合适工具。
|
5月前
|
JSON 数据格式 Python
解决Python requests库POST请求参数顺序问题的方法。
总之,想要在Python的requests库里保持POST参数顺序,你要像捋顺头发一样捋顺它们,在向服务器炫耀你那有条不紊的数据前。抓紧手中的 `OrderedDict`与 `json`这两把钥匙,就能向服务端展示你的请求参数就像经过高端配置的快递包裹,里面的商品摆放井井有条,任何时候开箱都是一种享受。
126 10
|
5月前
|
网络协议 API Python
解析http.client与requests在Python中的性能比较和改进策略。
最后,需要明确的是,这两种库各有其优点和适用场景。`http.client` 更适合于基础且并行的请求,`requests` 则因其易用且强大的功能,更适用于复杂的 HTTP 场景。对于哪种更适合你的应用,可能需要你自己进行实际的测试来确定。
158 10
|
2月前
|
数据采集 机器学习/深度学习 人工智能
Python:现代编程的首选语言
Python:现代编程的首选语言
258 102
|
2月前
|
数据采集 机器学习/深度学习 算法框架/工具
Python:现代编程的瑞士军刀
Python:现代编程的瑞士军刀
292 104

推荐镜像

更多