导航:首页 > IDC知识 > http上传下载服务器

http上传下载服务器

发布时间:2020-11-14 23:25:06

1、http下载是怎么通过数据包传输数据的?

HTTP 协议定义服务器端和客户端之间文件传输的沟通方式。目前HTTP协议的版本是Http1.1。RFC 2616描述了回HTTP协议的具体信息。答

这个协议已经成为浏览器和Web站点之间的标准。

当访问者点击一个超链接的时候,将会给浏览器提交一个URL地址。通过这个URL地址,浏览器便知道去链接那个网站并去取得具体的页面文件(也可能是一张图片,一个pdf文件)。

HTTP工作的基础就是,连接一个服务器并开始传输文件到浏览器。

在http传输的过程中,被称为客户端的请求者向服务器请求一个文件。

最基本的过程是:
1 客户端连接一个主机
2 服务器接收连接,
3 客户端请求一个文件,
4 服务器发送一个应答.

在文件传输过程中,也可以理解成向你说的一边发送一边读取,但是大文件是不可能在一个包中传递的,它们都被拆成了很多包,在广域网传输过程中,由于经过了不同网络设备,期间报文还可能被拆小或合并,但最后到达接收端后都会被重新按发送次序组成一个文件。
断点续传很简单,其实就是接受端在请求文件时通过一定的规则告诉发送端,自己这里已经收到了一个文件中的哪些部分,发送端直接将剩下的部分发给接收端。

2、如何用jsp将文件上传至http文件服务器

纯jsp? 用Jersey插件可以实现,ftp也可以,我贴出jersey的代码,比较简单。导入jar包即可。
我这里是先从一台服务器上把MP3文件下载下来,然后写成二进制,再利用jersey发送的。发送的代码就只有两三行吧
/**
* 上传歌曲到服务器
* @param url 歌曲播放地址
* @param fileName 歌曲名称
*
* @author 孙文祥
*/
public void upLoadToService(String url, String fileName) {
try {
URL ss = new URL(url);
HttpURLConnection urlc = (HttpURLConnection) ss.openConnection();
urlc.setDoInput(true);// 设置是否要从 URL 连接读取数据,默认为true
urlc.connect();
InputStream bufin = urlc.getInputStream();
ByteArrayOutputStream swapStream = new ByteArrayOutputStream();
int len = bufin.available();
byte[] b = new byte[len];
int rc = 0;
while ((rc = bufin.read(b, 0, len)) > 0) {
swapStream.write(b, 0, rc);
}
byte[] in2b = swapStream.toByteArray();
// 实例化Jersey
Client client = new Client();

// 想要发送到的服务器地址,记住,必须设置tomcat服务器的权限,不然无法上传到tomcat

String path = Constant.SERVICE_URL + fileName;
// 设置请求路径
WebResource resource = client.resource(path);
// 发送开始 PUT
resource.put(String.class, in2b);
} catch (Exception e) {
e.printStackTrace();
}
}

3、如何通过url方式从自己的服务器上下载文件?

服务器端搭建web服务器,绑定IP地址,开启http和ftp访问目录。然后把apk上传到web服务器的目录下,在client上就可以通过IP访问了

4、服务器上面的文件如何进行http下载?

用HTTP下载的话文件得拷到网站目录下,你看看你服务器设置的网站目录在哪里,然后把文件拷过去

补充:
没有HTTP服务器自然是不能使用HTTP下载了,安装个APACHE吧

5、c#中如何用http向文件服务器上传,下载文件

webClient类 上传下载很方便!

6、使用HTTP协议实现文件批量传输从A服务器到B服务器。要求有客户端和服务端。希望给出成功源码参考。

就算你给15块也没人给你做。

7、为什么服务器上的FTP上传速度达到4M左右而HTTP的下载速度才400K左右

你的服务器,在执行上传和下载的时候,还得看对方服务器的网络情况。比如,你上传和下载的目标服务器是10M ADSL,那就很好解释了,你这边是上传,他那边是接收数据“下载”,速度自然很快。你这边下载,他那边上传,自然就很慢。很多地方的上传和下载带宽都不“对称”,典型的就是ADSL。

8、怎么用http上传一个文件到服务器 python

首先,标准HTTP协议对上传文件等表单的定义在这里:wwwietforg/rfc/rfc1867txt 大概数据包格式如下:

单文件:

Content-type: multipart/form-data, boundary=AaB03x

--AaB03x
content-disposition: form-data; name="field1"

Joe Blow
--AaB03x
content-disposition: form-data; name="pics"; filename="file1.txt"
Content-Type: text/plain

... contents of file1.txt ...
--AaB03x--
多文件:

Content-type: multipart/form-data, boundary=AaB03x

--AaB03x
content-disposition: form-data; name="field1"

Joe Blow
--AaB03x
content-disposition: form-data; name="pics"
Content-type: multipart/mixed, boundary=BbC04y

--BbC04y
Content-disposition: attachment; filename="file1.txt"
其次,python上传文件的几种方法:

1 自己封装HTTP的POST数据包:http//stackoverflowcom/questions/680305/using-multipartposthandler-to-post-form-data-with-python

import httplibimport mimetypesdef post_multipart(host, selector, fields, files): content_type, body = encode_multipart_formdata(fields, files) h = httplib.HTTP(host) h.putrequest('POST', selector) h.putheader('content-type', content_type) h.putheader('content-length', str(len(body))) h.endheaders() h.send(body) errcode, errmsg, headers = h.getreply() return h.file.read() def encode_multipart_formdata(fields, files): LIMIT = '----------lImIt_of_THE_fIle_eW_$' CRLF = '\r\n' L = [] for (key, value) in fields: L.append('--' + LIMIT) L.append('Content-Disposition: form-data; name="%s"' % key) L.append('') L.append(value) for (key, filename, value) in files:

9、客户端通过Http Post方式上传图片到服务器(网站,作用:接收post上来的图片数据,并插入到数据库)

bud a

与http上传下载服务器相关的知识