android使用httpURLconnection怎么同时上传文件和参数到服务器
// 首先组拼文本类型的参数
StringBuilder sb = new StringBuilder();
for (MapEntry<String, String> entry : paramsentrySet()) {
sbappend(PREFIX);
sbappend(BOUNDARY);
sbappend(LINEND);
sbappend("Content-Disposition: form-data; name=\""
+ entrygetKey() + "\"" + LINEND);
sbappend("Content-Type: text/plain; charset=" + CHARSET + LINEND);
sbappend("Content-Transfer-Encoding: 8bit" + LINEND);
sbappend(LINEND);
sbappend(entrygetValue());
sbappend(LINEND);
}
DataOutputStream outStream = new DataOutputStream(
conngetOutputStream());
outStreamwrite(sbtoString()getBytes());
ftp:文件传输协议
http:超文本传输协议
FTP也是基于C/S模式而设计的。在进行FTP操作的时候,即需要客户应用程序,也需要服务器端程序。我们一般先在自己的计算机中执行FTP客户应用程序,在远程服务器中执行FTP服务器应用程序,这样,就可以通过FTP客户应用程序和FTP进行连接。连接成功后,可以进行各种操作。在FTP中,客户机只提出请求各接收服务,服务器只接收请求和执行服务。
在利用FTP进行文件传输之前,用户必须先连入INTERNET网中,在用户自己的计算机上启动FTP用户应用程序,并且利用FTP应用程序和远程服务器建立连接,激活远程服务器上的FTP服务器程序。准备就绪后,用户首先向FTP服务器提出文件传输申请,FTP服务器找到用户所申请的文件后,利用TCP/IP将文件的副本传送到用户的计算机上,用户的FTP程序再将接收到的文件写入自己的硬盘。文件传输完后,用户计算机与服务器计算机的连接自动断开。
与其他的C/S模式不同的是,FTP协议的客户机与服务器之间需要建立双重连接:一个是控制连接,另一个是数据连接。这样,在建立连接时就需要占用两个通信信道。
HTTP超文本传输协议,HTTP是用来在WWW上交换文件(文本,图形,声音,动画等)的规则集。相对于TCP/IP协议族(它是网上交换信息的基础),HTTP是应用协议。
能,但是要通过相应的非HTML脚本服务(比如ASP,PHP,CGI等等)
ASP,PHP,CGI是服务器端的代码解释器
不但要服务器端有这个解释器,而且站点的页面里也要有相应功能的代码
要更详细的话你恐怕真的要去学习一下ASP,PHP,CGI,JSP,XML等等比HTML更高级的脚本语言
0条评论