资讯专栏INFORMATION COLUMN

ajax交互post数据格式问题

robin / 1008人阅读

摘要:概述前后端数据交互主要有两种方式和。请求数据格式一般有以下几种方式方案一不指定。请求数据对象且被编码。告诉服务器从浏览器提交过来的数据格式。我这里显式的指定,传递的数据对应格式不对才会出现这种问题,这是传递的时候最好传对象。

概述

前后端数据交互主要有两种方式:get和post。其他restful风格的请求数据格式本质上都可以转为这两种形式,本文暂不讨论。
网址输入请求,超链接访问等都是get请求,请求数据格式固定单一,都是附加在url后面,中文和非ASII字符需要和后端协定统一编码,其他情况下如果参数形式拼接正确一般不会出问题。

post请求相对较复杂,本文重点论述。

post请求数据格式一般有以下几种方式:

方案一

不指定enctype。请求数据string(json格式)且数据没被编码。server端可以通过在controller方法中用Gson或者Jackson进行正常解析。

方案二

不指定enctype。请求数据对象且被编码。server端在controller方法中,需要通过stream reader方式获取,然后解析成对象使用。有一次看到群里有人问请求数据乱码,后端普通注解方式获取不到数据对象,不知如何解析就属于这种类型。 此种方法不推荐。

总结

上述两种都没指定enctype,也没手动编码数据格式。(contentType默认: "application/x-www-form-urlencoded") 发送信息至服务器时内容编码类型。默认值适合大多数应用场合。告诉服务器从浏览器提交过来的数据格式。默认contentType server端框架封装处理好了,能通过getParameter或者注解方式正常获取。我这里显式的指定 contentType: "application/json; charset=utf-8",传递的数据对应格式不对才会出现这种问题,这是传递的时候最好传json对象。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/66612.html

相关文章

  • ajax交互post数据格式问题

    摘要:概述前后端数据交互主要有两种方式和。请求数据格式一般有以下几种方式方案一不指定。请求数据对象且被编码。告诉服务器从浏览器提交过来的数据格式。我这里显式的指定,传递的数据对应格式不对才会出现这种问题,这是传递的时候最好传对象。 概述 前后端数据交互主要有两种方式:get和post。其他restful风格的请求数据格式本质上都可以转为这两种形式,本文暂不讨论。网址输入请求,超链接访问等都是...

    Heier 评论0 收藏0
  • Ajax的全面总结

    摘要:实现流程创建对象打开请求地址,初始化数据发送请求数据监听回调函数状态收到服务器返回的应答结果。请求完成后回调函数请求成功或失败时均调用。 Ajax在前端开发中有着举足轻重的地位,关于Ajax的使用和注意事项一直是一个重要的话题,借此机会,本文希望对Ajax做一个全面的总结,彻底揭开Ajax的神秘面纱。 一.什么是Ajax Ajax(Asynchronous JavaScript and...

    lookSomeone 评论0 收藏0
  • 深入浅出Ajax

    摘要:在接收响应期间持续不断地触发。在请求发生错误时触发。在通信完成或者触发或事件后触发。已经接收到部分响应数据。基于标准被广泛支持。破坏程序的异常处理机制。 原文(我的GitHub):https://github.com/liangfengbo/frontend-ability/issues/1 学习大纲 理解Ajax的工作原理 Ajax核心-XMLHttpRequest对象 封装Aja...

    megatron 评论0 收藏0
  • ajax与jsonp一点基础整理

    摘要:之所以不能跨域其实是因为受到同源策略的限制,只能让它访问同源下的数据,不能访问不同源下的数据同源策略每个网站只能读取同一来源的数据,这里的同一来源指的是主机名域名协议和端口号的组合。 一、Ajax的概念 Ajax是一种技术方案,但并不是一种新技术。它依赖的是现有的CSS/HTML/Javascript,而其中最核心的依赖是浏览器提供的XMLHttpRequest对象,是这个对象使得浏...

    tomlingtm 评论0 收藏0
  • AJAX入门这一篇就够了

    摘要:性能会有所降低一点内容,刷新整个页面用户的操作页面会中断整个页面被刷新了就是能够做到局部刷新三对象是中最重要的一个对象。头信息已经接收,响应数据尚未接收。 一、什么是Ajax Ajax(Asynchronous JavaScript and XML) 异步JavaScript和XML Ajax实际上是下面这几种技术的融合: (1)XHTML和CSS的基于标准的表示技术 (2)DOM进...

    tunny 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<