POST请求中参数以form data和request payload形式+清空数组方式
- 测试与服务端ajax时用的dva封装的request方法,而后端怎么也拿不到参数。结果返现参数在request payload里。
HTTP POST表单请求提交时:Content-Typeapplication/x-www-form-urlencoded,而使用原生AJAX的POST请求如果不指定请求头RequestHeader,默认使用的Content-Type是text/plain;charset=UTF-8。
表单提交数据是名值对的方式,而文件上传服务器需要特殊处理,普通的post请求数据格式不固定,不一定是名值对的方式,所以服务器无法知道具体的处理方式,所以只能通过获取原始数据流的方式来进行解析。jquery在执行post请求时,会设置Content-Type为application/x-www-form-urlencoded,所以服务器能够正确解析,而使用原生ajax请求时,如果不显示的设置Content-Type,那么默认是text/plain,这时不能用request.getParameter(name)的形式获取,所以才只能通过获取原始数据流的方式来进行解析请求数据。
2.清空数组
- 方式1,splice
var ary = [1,2,3,4]; ary.splice(0,ary.length); console.log(ary); // 输出 Array[0],空数组,即被清空了
- 方式2,length赋值为0。
这种方式很有意思,其它语言如Java,其数组的length是只读的,不能被赋值。如int[] ary = {1,2,3,4}; ary.length = 0;Java中会报错,编译通不过。而JS中则可以,且将数组清空了。var ary = [1,2,3,4]; ary.length = 0; console.log(ary);// 输出 [],空数组,即被清空了目前 Prototype中数组的 clear 和mootools库中数组的 empty 使用这种方式清空数组。
- 方式3,赋值为[]
var ary = [1,2,3,4]; ary = [];
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 解答了困扰我五年的技术问题
· 为什么说在企业级应用开发中,后端往往是效率杀手?
· 用 C# 插值字符串处理器写一个 sscanf
· Java 中堆内存和栈内存上的数据分布和特点
· 开发中对象命名的一点思考
· 为什么说在企业级应用开发中,后端往往是效率杀手?
· DeepSeek 解答了困扰我五年的技术问题。时代确实变了!
· 本地部署DeepSeek后,没有好看的交互界面怎么行!
· 趁着过年的时候手搓了一个低代码框架
· 推荐一个DeepSeek 大模型的免费 API 项目!兼容OpenAI接口!