JavaWeb-上传

一.上传

  1.上传对表单的限制

    * 表单的提交方式必须为post,即method="post"

    * 表单必须有一个属性enctype="multipart/form-data",在form标签上添加

    * 必须添加文件表单项,比如:<input type="file" name="xxx" .../>

  2.上传对servlet的限制

    * 当表单有enctype="multipart/form-data"时,request.getParametere()整个方法作废了,它的返回值永远时是null,对所有表单项失效

    * 想获取表单的值以及上传的文件内容,可以通过一个流:request.getInputStream(),这个流包含了整个请求的体

二.多部件表单(添加了enctype="multipart/form-data")的请求体

  1.请求体由多个部件的格式组成,每一个部件对应一个表单项

  2.每一个部件由属于自己的请求头,空行和请求体

  3.普通表单项

    * 普通表单项有一个头:Content-disposition,包含了name="xxx",即表单项名称,它的体是表单项的值

  4.文件表单项

    *文件表单项有两个头:

      Content-disposition,包含了name="xxx",即表单项名称,还有filename="xxx",即上传文件的名称

      Content-Type,表示该上传文件的MINE类型,例如:image/jpeg,表示上传的是图片,图片类型是jpg的拓展名称

    *它的体是上传文件的内容(内容进行了编码处理后)

posted @   爱编程DE文兄  阅读(170)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~
点击右上角即可分享
微信分享提示