服务器无法通过http上传文件,用winsock通过http POST方式向服务器上传文件的有关问题...

当前位置:我的异常网» VB » 用winsock通过http POST方式向服务器上传文件的有关

用winsock通过http POST方式向服务器上传文件的有关问题

www.myexceptions.net  网友分享于:2015-08-26  浏览:284次

用winsock通过http POST方式向服务器上传文件的问题

传输到服务器上的文件会出错,服务器端提示org.apache.commons.fileupload.FileUploadBase$IOFileUploadException:   Processing   of   multipart/form-data   request   failed.   Stream   ended   unexpectedly

如果我把传输文件内容替换成文本文件,就没有这个错误了,因此我怀疑是不是我的文件读取程序处需要进行什么处理??这一点我不太明白该怎么做,请赐教。

我的程序代码如下

[code]

Dim   strHttp   As   String

Dim   strBoundary   As   String

Dim   strBody   As   String

Dim   lngLength   As   Long

Dim   filename   as   string

filename   =   "d:\abc.zip "

'   create   a   boundary

strBoundary   =   "----adfasdf2342nasdfasdfasdf "

strBody   =   strBody   &   "-- "   &   strBoundary

strBody   =   strBody   &   vbCrLf

strBody   =   strBody   &   "Content-Disposition:   form-data;   name= " "id " " "

strBody   =   strBody   &   vbCrLf

strBody   =   strBody   &   vbCrLf

strBody   =   strBody   &   "0001 "

strBody   =   strBody   &   vbCrLf

strBody   =   strBody   &   "-- "   &   strBoundary   &   vbCrLf

strBody   =   strBody   &   "Content-Disposition:   form-data;   name= " "file " ";   filename= " " "   &   _

filename   &   " " " "   &   vbCrLf

strBody   =   strBody   &   "Content-Type:   application/zip "   &   vbCrLf

strBody   =   strBody   &   vbCrLf   &   getFileData(filename)

strBody   =   strBody   &   vbCrLf   &   "-- "   &   strBoundary   &   "-- "   &   vbCrLf

lngLength   =   Len(strBody)

strHttp   =   "POST   /upload.jsp   HTTP/1.0 "   &   vbCrLf

strHttp   =   strHttp   &   "Host:   server "   &   vbCrLf

strHttp   =   strHttp   &   "Content-Type:   multipart/form-data;   boundary= "   &   strBoundary   &   vbCrLf

strHttp   =   strHttp   &   "Content-Length:   "   &   lngLength   &   vbCrLf   &   vbCrLf

文章评论

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值