web服务器向客户端发送文件

Web服务器读取一个文件的二进制数据,把这组二进制数据发送个客户端,服务器发送给客户端的HTML文档的本质也是二进制。客户端使用以下代码读文件

response = urllib.request.urlopen(url + "?" + urllib.parse.quote(fileName))
data = response.read()

server.py

import flask
app = flask.Flask(__name__) @app.route('/', methods=['GET','POST'])
def index():
if not "fileName" in flask.request.values:
s = "test.jpg"
return s
else:
fileName = flask.request.values.get("fileName")
f = open(fileName, "rb")
data = f.read()
f.close()
return data if __name__ == '__main__':
app.run()

clent.py

import urllib.request
import urllib.parse url = "http://127.0.0.1:5000"
response = urllib.request.urlopen(url)
data = response.read()
fileName = data.decode('utf-8')
response = urllib.request.urlopen(url + "?" + urllib.parse.quote(fileName))
data = response.read()
f = open("dowmload" + fileName, "wb")
f.write(data)
f.close()
print(fileName, len(data))

静态文件夹文件下载

server.py

import flask
app = flask.Flask(__name__) @app.route('/', methods=['GET','POST'])
def index():
return "Image" if __name__ == '__main__':
app.run()

client.py

import urllib.request
import urllib.parse url = "http://127.0.0.1:5000/static/test.jpg"
response = urllib.request.urlopen(url)
data = response.read()
f = open("dowmload test.jpg", "wb")
f.write(data)
f.close()
print("downloaded", len(data), "bytes")

向web服务器下载文件的更多相关文章

  1. 用IdHTTPServer搞个简单的WEB服务器下载文件

    放在公司共享盘中的文件,不时就被其他人剪切走了,本想用Apache搭个服务端,提供文件下载的功能,写php脚本时碰到点问题,没折腾出来,一狠心,用Indy的IdHttpServer写.不过中间也碰到了 ...

  2. Java Web实现使用浏览器从服务器下载文件(后台)

    Java Web实现 使用浏览器从服务器下载文件. 下面实现两种情况的下载,需求如下: 需求(一):1.用户在页面填写表单. 2.填写完成后,选择下载,将表单内容发往后台. 3.后台根据内容生产一个文 ...

  3. 【FTP】C# System.Net.FtpClient库连接ftp服务器(下载文件)

    如果自己单枪匹马写一个连接ftp服务器代码那是相当恐怖的(socket通信),有一个评价较高的dll库可以供我们使用. 那就是System.Net.FtpClient,链接地址:https://net ...

  4. (4)FTP服务器下载文件

    上一篇中,我们提到了怎么从FTP服务器下载文件.现在来具体讲述一下. 首先是路径配置.. 所以此处我们需要一个app.config来设置路径. <?xml version="1.0&q ...

  5. Python 实现批量从不同的Linux服务器下载文件

    基于Python实现批量从不同的Linux服务器下载文件   by:授客 QQ:1033553122 实现功能 1 测试环境 1 使用方法 1 1. 编辑配置文件conf/file_for_downl ...

  6. 从Linux服务器下载文件到本地命令

    从Linux服务器下载文件夹到本地1.使用scp命令 scp /home/work/source.txt work@192.168.0.10:/home/work/ #把本地的source.txt文件 ...

  7. 从Linux服务器下载文件夹到本地

    从Linux服务器下载文件夹到本地 1.使用scp命令 scp /home/work/source.txt work@192.168.0.10:/home/work/ #把本地的source.txt文 ...

  8. C# 从服务器下载文件代码的几种方法

    一.//TransmitFile实现下载 protected void Button1_Click(object sender, EventArgs e) { /* 微软为Response对象提供了一 ...

  9. Javaweb向服务器上传文件以及从服务器下载文件的方法

    先导入jar包 点击下载 commons-fileupload是Apache开发的一款专门用来处理上传的工具,它的作用就是可以从request对象中解析出,用户发送的请求参数和上传文件的流. comm ...

  10. Java 从服务器下载文件到本地(页面、后台、配置都有)

    先来看实现效果: 有一个链接如下: 点击链接下载文件:  第一种方法:Servlet实现 一.HTML页面部分: 1.HTML页面中的一个链接 <a id="downloadTempl ...

随机推荐

  1. [GPT] quasar 在 setup() 周期阶段想设置meta信息,如何获取当前的 route 参数动态设置

    在Vue 3 的Composition API(组合式API)中,特别是在 setup() 钩子函数阶段, 由于没有访问到常规的 Vue 实例(this上下文),所以不能直接使用 this.$rout ...

  2. JavaScript 如何实现一个响应式系统

    JavaScript 如何实现一个响应式系统 第一阶段目标 数据变化重新运行依赖数据的过程 第一阶段问题 如何知道数据发生了变化 如何知道哪些过程依赖了哪些数据 第一阶段问题的解决方案 我们可用参考现 ...

  3. IIncrementalGenerator 判断程序集的引用关系

    本文将告诉大家如何在 IIncrementalGenerator 增量 Source Generator 生成代码里面,在 Roslyn 分析器里面判断两个程序集是否存在引用关系 先上核心代码实现,核 ...

  4. 2019-9-30-dotnet-枚举当前设备wifi热点

    title author date CreateTime categories dotnet 枚举当前设备wifi热点 lindexi 2019-09-30 14:42:18 +0800 2019-9 ...

  5. pikachu靶机练习平台-xss

    第一题:反射性xss(get) 输出的字符出现在url中 第二题:反射性xss(post) 登录后输入<script>alert(1)</script> 第三题:存储型xss ...

  6. rails byebug

    Gemfile里添加 gem 'byebug' bundle install 在要打断点的地方写 byebug byebug -h #帮助 c 放行,入下走 n 单行调适 q 退出进行 启动异步任务推 ...

  7. 01 elasticsearch学习笔记-环境安装

    docker-compose安装EFK git clone https://github.com/haimait/docker_compose_efk docker-compose up -d Flu ...

  8. k8s&dapr开发部署实验(1)服务调用

    前置条件 安装docker与dapr: 手把手教你学Dapr - 3. 使用Dapr运行第一个.Net程序 安装k8s dapr 自托管模式运行 新建一个webapi无权限项目 launchSetti ...

  9. Immich让你从此告别百度网盘备份手机照片

    一. Immich 是什么 Immich是一个开源的图片自托管服务,它能实现类似于百度网盘的照片自动备份.分类等功能,它同时提供了Web管理页面,和移动端APP,可以轻松备份手机中的照片至家庭服务器中 ...

  10. 将.net core api 部署成windows服务

    将.net core api 部署成windows服务   参考 https://blog.csdn.net/qq_38762313/article/details/103311944 将NSSM解压 ...