http实现跨服务器传输文件|怎么用C实现Http POST功能向Http服务器上传文件

|

Ⅰ 服务器之间传输网页使用的协议是

http协议。HTTP协议是HyperTextTransferProtocol(超文本传输协议)的缩写。服务器之间传输网页使用的协议是http协议。是万维网(WWW:WorldWideWeb)服务器与本地浏览器之间传输超文本的传送协议。HTTP基于TCP/IP通信协议进行传送输数据(HTML文件、图片文件、查询结果等)。

Ⅱ 怎么用C实现Http POST功能向Http服务器上传文件

文件可抄以使用sendfile直接过去比如刚开始是报文头部结束\r\n\r\n直接write就可以然后文件数据可以直接sendfile处理,也可以#define BUFSIZE 8196while(read(fd,buf,BUFSIZE)>0){write(…);}CONTENT-LENGTH是报文头结束\r\n\r\n之后的字节总数

Ⅲ 如何实现文件的跨服务器下载

3中处理方式 1、服务器A通过stock 将服务器B 上得文件读取到A服务器上然后再输出给用户 2、服务器B用http、ftp 等协议能直接传输到用户端,服务器A只要定位到B服务器上的文件绝对路径即可 3、服务器A和B在一个Lan 网段,可以通过A访问B上的共享在实现 方式1性能消耗大,方式2不能控制用户(如需登录、积分)

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

首先,标准HTTP协议对上传文件等表单的定义在这里:wwwietforg/rfc/rfc1867txt 大概数据包格式如下:单文件:Content-type: multipart/form-data, boundary=AaB03x–AaB03xcontent-disposition: form-data; name="field1"Joe Blow–AaB03xcontent-disposition: form-data; name="pics"; filename="file1.txt"Content-Type: text/plain… contents of file1.txt …–AaB03x–多文件:Content-type: multipart/form-data, boundary=AaB03x–AaB03xcontent-disposition: form-data; name="field1"Joe Blow–AaB03xcontent-disposition: form-data; name="pics"Content-type: multipart/mixed, boundary=BbC04y–BbC04yContent-disposition: attachment; filename="file1.txt"其次,python上传文件的几种方法:1 自己封装HTTP的POST数据包:http//stackoverflowcom/questions/680305/using-multipartposthandler-to-post-form-data-with-pythonimport 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:

Ⅳ 怎么用C实现Http POST功能向Http服务器上传文件

用socket就行了。和服务器建立请求。然后发送请求报文"\r\n\r\n"结束之后是数据。post分为,application/x-www-form-urlencoded和multipart/form-data boundary=要是上传文件,就得使用multipart/form-data boundary=…服务器那边根据boundary来解析出数据。

Ⅵ 如何实现文件在不同服务器之间传送

一般都是开ftp手动传输!你把文件存放到固定地方!每次更新都手动替换一下啦!这种东西用代码做不太好!文件太多的话!会很乱的!补充:那你就在添加信息的时候让他选择文件上传撒!文件支持保存。一句saveas就搞定了撒!

Ⅶ 客户端怎样使用http传送文件到服务器

如果你的客户端是HTML,最简单的就是写个form,按post方式提交。

如果是其他语言,方法就多了去。

可以打开一个http请求,然后直接写二进制流,例如AS3之中就可以用URLRquest方法来干这个事情。然后服务器读取这个二进制流,然后写成为文件。

模拟HTML表单的方式提交文件。例如Android 开发包中的HttpClient工具包。

C++….呵呵,这个代码太长了,不说了,没事就不要用C++

Ⅷ 用http协议能不能上传文件

能,但是要通过来相应源的非HTML脚本服务(比如ASP,PHP,CGI等等)ASP,PHP,CGI是服务器端的代码解释器不但要服务器端有这个解释器,而且站点的页面里也要有相应功能的代码要更详细的话你恐怕真的要去学习一下ASP,PHP,CGI,jsP,XML等等比HTML更高级的脚本语言

Ⅸ http中上传文件的原理

http中上传文件的原理如下:在最初的http协议中,没有上传文件方面的功能。 rfc1867 ( http://www.ietf.org/rfc/rfc1867.txt ) 为 http 协议添加了这个功能。客户端的浏览器,如 Microsoft IE, Mozila, Opera 等,按照此规范将用户指定的文件发送到服务器。服务器端的网页程序,如 php, asp, jsp 等,可以按照此规范,解析出用户发送来的文件。Microsoft IE, Mozila, Opera 已经支持此协议,在网页中使用一个特殊的 form 就可以发送文件。绝大部分 http server ,包括 tomcat ,已经支持此协议,可接受发送来的文件。各种网页程序,如 php, asp, jsp 中,对于上传文件已经做了很好的封装。超文本传输协议(HTTP,HyperText Transfer Protocol)是互联网上应用最为广泛的一种网络协议。所有的WWW文件都必须遵守这个标准。设计HTTP最初的目的是为了提供一种发布和接收HTML页面的方法。1960年美国人Ted Nelson构思了一种通过计算机处理文本信息的方法,并称之为超文本(hypertext),这成为了HTTP超文本传输协议标准架构的发展根基。

Ⅹ 客户端(C#)通过HTTP协议怎么向服务器端(java)传送文件(常用的是图片) ,服务器端又怎么解析

private string PostWebRequest(string postUrl, string paramData, Encoding dataEncode) { string ret = string.Empty; try { byte[] byteArray = dataEncode.GetBytes(paramData); //转化 HttpWebRequest webReq = (HttpWebRequest)WebRequest.Create(new Uri(postUrl)); webReq.Method = "POST"; webReq.ContentType = "application/x-www-form-urlencoded"; webReq.ContentLength = byteArray.Length; Stream newStream = webReq.GetRequestStream(); newStream.Write(byteArray, 0, byteArray.Length);//写入参数 newStream.Close(); HttpWebResponse response = (HttpWebResponse)webReq.GetResponse(); StreamReader sr = new StreamReader(response.GetResponseStream(), Encoding.Default); ret = sr.ReadToEnd(); sr.Close(); response.Close(); newStream.Close(); } catch (Exception ex) { MessageBox.Show(ex.Message); } return ret; }


赞 (0)