zoukankan      html  css  js  c++  java
  • post 编码解释

    客户端发送内容构造假设接受文件的网页程序位于 http://192.168.29.65/upload_file/UploadFile.
    假设我们要发送一个二进制文件、一个文本框表单项、一个密码框表单项。文件名为 E:\s ,其内容如下:


    POST /upload_file/UploadFile HTTP/1.1
    Accept: text/plain, */*
    Accept-Language: zh-cn
    Host: 192.168.29.65:80
    Content-Type:multipart/form-data;boundary=---------------------------7d33a816d302b6
    User-Agent: Mozilla/4.0 (compatible; OpenOffice.org)
    Content-Length: 424
    Connection: Keep-Alive -----------------------------7d33a816d302b6
    Content-Disposition:form-data;
    name="userfile1";
    filename="E:\s"Content-Type:
    application/octet-stream XXX
    -----------------------------7d33a816d302b6

    Content-Disposition: form-data;

    name="text1" foo

    -----------------------------7d33a816d302b6

    Content-Disposition: form-data;

    name="password1" bar

    -----------------------------7d33a816d302b6--

    (上面有一个回车)此内容必须一字不差,包括最后的回车。

    (其中的XXX代表二进制数据,如 01 02 03)

    注意:Content-Length: 424 这里的424是红色内容的总长度(包括最后的回车)
    注意这一行:Content-Type: multipart/form-data; boundary=---------------------------7d33a816d302b6

    根据 rfc1867, multipart/form-data是必须的.---------------------------7d33a816d302b6 是分隔符,分隔多个文件、表单项。

    其中33a816d302b6 是即时生成的一个数字,用以确保整个分隔符不会在文件或表单项的内容中出现。前面的 ---------------------------7d 是 IE 特有的标志。

    Mozila 为---------------------------71用手工发送这个例子,在上述的 servlet 中检验通过。

  • 相关阅读:
    ionic localstorage
    angular 中文鏈接
    把jqmobi 變成jQuery 的插件 從此使用jQuery
    jqmobi 的一些設置
    ionic ngcordova map 地圖
    ionic pull to refresh 下拉更新頁面
    json 對象的序列化
    鍵盤彈出,頁面佈局被推上去了.....
    Cordova V3.0.0中config.xml配置文件的iOS Configuration
    android ios 只能輸入數字 不能輸入小數點的 函數 cordova
  • 原文地址:https://www.cnblogs.com/mattins/p/2318294.html
Copyright © 2011-2022 走看看