对form表单post的研究

    xiaoxiao2021-03-25  117

    ========================get方式提交form

    默认方式为get,表单元素必须要有name属性,最后各个表单元素的值(如果是file类型,值为文件名)会拼接成get方式的URL(带有querystring)。 如果action属性的URL原来带有querystring,没用会被替换。 ========================post 方式提交form ============不上传文件时(假设只有两个文本框,name分别为t1,t2) application/x-www-form-urlencoded  方式    拼接了一个querystring格式(t1=abc&t2=123)的字符串,放在body中发送。 text/plain 方式  也是拼接了一个类似querystring格式的字符串,把&符号换成换行符,就这点区别,所以一般不用这种方式。 multipart/form-data 方式  拼接了如下这个字符串 ------WebKitFormBoundaryoN4c6mtJxYsthawZ Content-Disposition: form-data; name="t1" as ------WebKitFormBoundaryoN4c6mtJxYsthawZ Content-Disposition: form-data; name="t2" 1123 ------WebKitFormBoundaryoN4c6mtJxYsthawZ-- ============只上传文件时(假设只有两个文件框,name分别为t1,t2)注意:一个文件框加 multiple="true"属性就可以一次选多个,相当于 多个文件框 application/x-www-form-urlencoded  方式   每个文件框只能选一个文件,然后拼接成(t1=a.jpg&t2=b.jpg)格式提交,可以看到只有文件名。 text/plain 方式  每个文件框只能选一个文件,上面的&变成换行符  很类似 multipart/form-data 方式  每个文件框只能选一个文件,在浏览器看到的内容如下,隐藏了数据体,而node后台看到了数据体(在 Content-Type: image/jpeg 后面) ------WebKitFormBoundaryr4RCxmNfojDmqUlc Content-Disposition: form-data; name="t1"; filename="avatar.jpg" Content-Type: image/jpeg ------WebKitFormBoundaryr4RCxmNfojDmqUlc Content-Disposition: form-data; name="t2"; filename="avatar2.jpg" Content-Type: image/jpeg ------WebKitFormBoundaryr4RCxmNfojDmqUlc--
    转载请注明原文地址: https://ju.6miu.com/read-19996.html

    最新回复(0)