请求各位大神帮帮忙,非常急。
问题介绍:我在本地通过一个文件传送的工具(curl)用http post向服务端的一个url(127.0.0.1:8080/faces)发送一个文件,然后服务端自动接受客户端发送的这个文件。
具体如何实现最好给个列子。
http post 服务端接受文件

解决方案 »

  1.   

    你可以自己写一个支持HTTP协议的东东来自己解析,或者写一个Servlet来处理这个POST提交.假设这是文件内容text
    This upload test.
    那么上传后的POST信息应该是这样
    POST /Upload HTTP/1.1
    Host: localhost:8080
    User-Agent: Mozilla/5.0 (X11; U; Linux i686; zh-CN; rv:1.9.2.8) Gecko/20100723 Ubuntu/10.04 (lucid) Firefox/3.6.8
    Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
    Accept-Language: zh-cn,zh;q=0.5
    Accept-Encoding: gzip,deflate
    Accept-Charset: GB2312,utf-8;q=0.7,*;q=0.7
    Keep-Alive: 115
    Connection: keep-alive
    Content-Type: multipart/form-data; boundary=---------------------------205147955511612195381301874305
    Content-Length: 243
    -----------------------------205147955511612195381301874305
    Content-Disposition: form-data; name="file"; filename="test.txt"
    Content-Type: text/plain
    [\r\n]
    text
    This upload test.
    -----------------------------205147955511612195381301874305--
    [\r\n]
    接着就是自己去解析这些数据拿到上传的信息了.
      

  2.   

    servelt怎么处理Post请求,我用的框架是jsf+ejb+jpa
      

  3.   

    Servlet的规范你真的看了吗?继承HttpServlet,然后实现doPost方法.在这个方法里就可以开始解析上面说的协议了.其实就是HTTP协议.当然有很多开源的已经实现了,你不想了解这些的话直接看看commons-fileupload.文档在这"http://www.ostools.net/apidocs/apidoc?api=commons-fileupload"
      

  4.   

    回复于: 2013-04-17 18:13:08 
    Servlet的规范你真的看了吗?继承HttpServlet,然后实现doPost方法.在这个方法里就可以开始解析上面说的协议了.其实就是HTTP协议.当然有很多开源的已经实现了,你不想了解这些的话直接看看commons-fileupload.文档在这"http://www.ostools.net/apidocs/apidoc?api=commons-fileupload"